JavaScript无法在ModalPopupExtender中获取下拉所选索引
本文关键字:索引 获取 ModalPopupExtender JavaScript | 更新日期: 2023-09-27 17:50:21
我有一个ModalPopupExtender与多个下拉列表在一个UpdatePanel,我使用JavaScript打开一个页面,并在查询字符串中传递参数。
下拉列表选择的索引总是设置为0 (ModalPopupExtender启动时的初始值)。
帮忙吗?
JS函数function openInterfacePage() {
var url = "Interface.aspx?";
if ($('#<%= DDLPOP.ClientID %>').prop("selectedIndex") > 0) {
url += "pop=" + $('#<%= DDLPOP.ClientID %> option:selected').val().trim();
}
if ($('#<%= DDLDevicePOPUP.ClientID %>').prop("selectedIndex") > 0) {
url += "&device=" + $('#<%= DDLDevicePOPUP.ClientID %> option:selected').val().trim();
}
if ($('#<%= DDLDeviceInterface.ClientID %>').prop("selectedIndex") > 0) {
url += "&interface=" + $('#<%= DDLDeviceInterface.ClientID %> option:selected').val().trim();
}
window.open(url, "mywindow", "toolbar=0,titlebar=0,status=0,resizable=0,menubar=0,location=1, width=920,height=500");
}
prop("selectedIndex")总是= 0,我认为javascript不识别回发后发生的变化
我发现了这背后的原因,我把它贴出来,以防其他人面临同样的问题。
我把我的代码放在用户控件中,javascript函数在同一个用户控件中,所以页面中有相同函数的不同副本(在页面中使用用户控件的次数相同)。
因此,我从用户控件中删除了函数并将其放在页面中,因此现在该函数只有一个副本。并将下拉列表控件的id作为参数传递给函数。