奶酪魔像 2017-08-20 15:00 采纳率: 0%
浏览 1101

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

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

Ep_zone objZone = new Ep_zone();
 Zone zone = new Zone();
sleSheng.DataSource = zone.GetProvince();
sleSheng.DataTextField = "ZONENAME";
sleSheng.DataValueField = "ZONE";
sleSheng.DataBind();

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

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

JS部分:

 //地址级联选择
function sleZone(zone, subZone) {
    $.ajax({
        type: "POST",
        dataType: "json",
        url: "ZoneListHandler.ashx",
        contentType: "application/x-www-form-urlencoded; charset=utf-8",
        data: {
            getmethod: "GetSubZone",
            id: $("#" + zone + "").val()
        },
        success: function (record) {
            $("#" + subZone + "").find("option").remove();
            if (true == record.Successful) {
                for (var i = 0; i < record.obj.length; i++) {
                    $("#" + subZone + "").append('<option value="' + record.obj[i].Zone + '">' + record.obj[i].Zonename + '</option>');
                }
            }
        }
    })
}

前台部分:

 <span class="select-box size-MINI address">
                            <select id="sleSheng" class="select" runat="server" onchange="sleZone('sleSheng','sleShi');" onkeydown="KJkeydown('sleShi','txtRemark','form1');"></select>
                        </span>&nbsp;省&nbsp;
                        <span class="select-box size-MINI address">
                            <select id="sleShi" class="select" runat="server" onchange="sleZone('sleShi','sleXianQu');" onkeydown="KJkeydown('sleXianQu','sleSheng','form1');"></select>
                        </span>&nbsp;市&nbsp;
                        <span class="select-box size-MINI address">
                            <select id="sleXianQu" class="select" runat="server" onchange="sleZone('sleXianQu','sleZhenXiang');" onkeydown="KJkeydown('sleZhenXiang','sleShi','form1');"></select>
                        </span>&nbsp;县、区&nbsp; 
                        <span class="select-box size-MINI address">
                            <select id="sleZhenXiang" class="select" runat="server" onchange="sleZone('sleZhenXiang','sleCunShequ');" onkeydown="KJkeydown('sleCunShequ','sleXianQu','form1');"></select>
                        </span>&nbsp;镇、乡、街道&nbsp; 
                        <span class="select-box size-MINI address">
                            <select id="sleCunShequ" class="select" runat="server" onkeydown="KJkeydown('btnSave','sleZhenXiang','form1');"></select>
                        </span>&nbsp;村、社区&nbsp; 

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

 obj_organ.Zone = sleSheng.Value + sleShi.DataTextField + sleXianQu.DataValueField + sleZhenXiang.Attributes.Keys + sleCunShequ.Value;
  • 写回答

2条回答 默认 最新

  • open_yu 2017-08-21 01:47
    关注

    你确定这 $("#" + zone + "").val()有值吗,最好打印看看,感觉这地方有问题

    评论

报告相同问题?

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大