您的位置:首页 > Web前端 > JavaScript

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

2013-08-06 16:03 483 查看
这俩天用了一下百度地图的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="搜索" onclick="_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;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐