DWZ select combox 级联中遇到的一个bug

在DWZ框架中,当使用级联菜单时,首次选择特定选项(如山东省)会导致错误并跳转到首页。经过排查,问题出在`<a>`标签的`href`属性上,原本的`#`导致了错误。修复方法是将`href`改为`javascript:void(0);`,从而避免页面跳转,正常显示下一级菜单(如济南市、青岛市)。
bug重现:
每次我登录 系统时,第一次 选择级联菜单时,比如选择 山东省, 他就会报tajax error错 跳转到首页。 而再次重新选择级联菜单时,  再选择山东省,就会 在下一级输出 济南、青岛等市一级。

这个问题困扰了很久,以为 触发什么事件,但js水平不高,排了好几次,都这样。昨晚上 无聊 又排了下 。发现 是因为 <a href='http://gaoce19871026.blog.163.com/#' ></a>  这里的问题,所幸  把下面标红色的 # ,改为 javascript:void(0);,就ok了
return this.each(function(i){
    var $this = $(this).removeClass("combox");
    var name = $this.attr("name");
    var value= $this.val();
    var label = $("option[value=" + value + "]",$this).text();
    var ref = $this.attr("ref");
    var refUrl = $this.attr("refUrl") || "";

    var cid = $this.attr("id") || Math.round(Math.random()*10000000);
    var select = '<div class="combox"><div id="combox_'+ cid +'" class="select"' + (ref?' ref="' + ref + '"' : '') + '>';
    select += '<a href="javascript:" class="'+$this.attr("class")+'" name="' + name +'" value="' + value + '">' + label +'</a></div></div>';
    var options = '<ul class="comboxop" id="op_combox_'+ cid +'">';
    $("option", $this).each(function(){
        var option = $(this);
        options +="<li><a class=\""+ (value==option[0].value?"selected":"") +"\" href=\"#\" value=\"" + option[0].value + "\">" + option[0].text + "</a></li>";
    });
    options +="</ul>";
   
    $("body").append(options);
    $this.after(select);
    $("div.select", $this.next()).comboxSelect().append($this);
   
    if (ref && refUrl) {
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值