首页 新闻 会员 周边 捐助

后台获取不到JS中添加的select控件的值;多级联动下拉框,如何在变动时清空所有子级

0
悬赏园豆:5 [已关闭问题] 关闭于 2017-08-29 17:05

  自己写的多级联动下拉框,省份部分有绑定数据

1 Ep_zone objZone = new Ep_zone();
2 Zone zone = new Zone();
3 sleSheng.DataSource = zone.GetProvince();
4 sleSheng.DataTextField = "ZONENAME";
5 sleSheng.DataValueField = "ZONE";
6 sleSheng.DataBind();

  第一个问题:后面的下拉框就是用JS通过AJAX附加的,,这种情况下在后台获取不到值(代码见最后一段),自己推测是因为在前台附加,所以获取不到值,但是完全找不到改的方向。

  第二个问题:最初用JS写的嵌套,所以用find("option").remove()可以清空所有子级的数据,现在只能清空下一级,这个要怎么修改呢?


JS部分:

 1  1 //地址级联选择
 2  2 function sleZone(zone, subZone) {
 3  3     $.ajax({
 4  4         type: "POST",
 5  5         dataType: "json",
 6  6         url: "ZoneListHandler.ashx",
 7  7         contentType: "application/x-www-form-urlencoded; charset=utf-8",
 8  8         data: {
 9  9             getmethod: "GetSubZone",
10 10             id: $("#" + zone + "").val()
11 11         },
12 12         success: function (record) {
13 13             $("#" + subZone + "").find("option").remove();
14 14             if (true == record.Successful) {
15 15                 for (var i = 0; i < record.obj.length; i++) {
16 16                     $("#" + subZone + "").append('<option value="' + record.obj[i].Zone + '">' + record.obj[i].Zonename + '</option>');
17 17                 }
18 18             }
19 19         }
20 20     })
21 21 }

 

前台部分:

 1 <span class="select-box size-MINI address">
 2                             <select id="sleSheng" class="select" runat="server" onchange="sleZone('sleSheng','sleShi');" onkeydown="KJkeydown('sleShi','txtRemark','form1');"></select>
 3                         </span>&nbsp;省&nbsp;
 4                         <span class="select-box size-MINI address">
 5                             <select id="sleShi" class="select" runat="server" onchange="sleZone('sleShi','sleXianQu');" onkeydown="KJkeydown('sleXianQu','sleSheng','form1');"></select>
 6                         </span>&nbsp;市&nbsp;
 7                         <span class="select-box size-MINI address">
 8                             <select id="sleXianQu" class="select" runat="server" onchange="sleZone('sleXianQu','sleZhenXiang');" onkeydown="KJkeydown('sleZhenXiang','sleShi','form1');"></select>
 9                         </span>&nbsp;县、区&nbsp; 
10                         <span class="select-box size-MINI address">
11                             <select id="sleZhenXiang" class="select" runat="server" onchange="sleZone('sleZhenXiang','sleCunShequ');" onkeydown="KJkeydown('sleCunShequ','sleXianQu','form1');"></select>
12                         </span>&nbsp;镇、乡、街道&nbsp; 
13                         <span class="select-box size-MINI address">
14                             <select id="sleCunShequ" class="select" runat="server" onkeydown="KJkeydown('btnSave','sleZhenXiang','form1');"></select>
15                         </span>&nbsp;村、社区&nbsp; 

后台部分:除了第一个sleSheng.value均获取不到值,Keys里只有三个

obj_organ.Zone = sleSheng.Value + sleShi.DataTextField + sleXianQu.DataValueField + sleZhenXiang.Attributes.Keys + sleCunShequ.Value;
夜尽丶的主页 夜尽丶 | 初学一级 | 园豆:173
提问于:2017-08-19 16:07
< >
分享
所有回答(1)
0

在ajax里加上 async : false,试试

姚刘乐 | 园豆:70 (初学一级) | 2017-08-21 11:18

已经测试了,对两个问题都没有效果

支持(0) 反对(0) 夜尽丶 | 园豆:173 (初学一级) | 2017-08-22 12:44
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册