.net ajax,js获取下拉列表值,js获取runat server控件的控制权

这俩天用了一下百度地图的api,小小总结一下。

1.利用.net 内部控件实现局部刷新

<asp:ScriptManager ID="ScriptManager1" EnablePartialRendering="true" runat="server">
            </asp:ScriptManager>
        <asp:UpdatePanel ID="UpdatePanel1" runat="server">
            <ContentTemplate>
                <asp:DropDownList runat="server"  ID="kind" style="width:75px;"></asp:DropDownList> 
                <asp:DropDownList runat ="server" ID="city" AutoPostBack="True" style="width:75px;"
                    onselectedindexchanged="city_SelectedIndexChanged" ></asp:DropDownList>
                <asp:DropDownList runat ="server" ID="area" style="width:75px;"><asp:ListItem>--地区--</asp:ListItem>  
                </asp:DropDownList>
            </ContentTemplate>
        </asp:UpdatePanel>
        <input id="Btn" type="button" value="搜索" οnclick="_select()"/>

2.js获取下拉列表值

document.getElementById(name).options[document.getElementById(name).selectedIndex].innerText

3.最开始用的不是input Button而是asp的button ,这就涉及到js获取runat server控件的控制权问题。

一般js中可以通过document.getElementById("id")的方法来获取控件的控制,但如果某控件的属性里runat="server"时就无法通过该方法获得了,而我们又需要控件"跑在客户端"以便后台代码进行控制。 以点击Button触发Dropdownlist联动为例。此时只需如此:

 protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            Btn.Attributes.Add("OnClick", "return _select(" + this.kind.UniqueID + "," + this.city.UniqueID + "," + this.area.UqiqueID + ");");
        }
    } 
 function _select(kindtxt, citytxt, areatxt) {
        var objkind = kindtxt;
        var objcity = citytxt;
        var objarea = areatxt;
        var place = objkind.options[objkind.selectedIndex].text + objcity.options[objcity.selectedIndex].text + objarea.options[objarea.selectedIndex].text;
    }  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值