zoukankan      html  css  js  c++  java
  • dwz中combox的value问题

    dwz手册上说combox设置value=xxx,代表选择项。实际应用中发现总是会显示第一项,打开dwz.combox.js代码:

     1 var $this = $(this).removeClass("combox");
     2                 var name = $this.attr("name");
     3                 var value= $this.attr("value");
     4                 var label = $("option[value=" + value + "]",$this).text();
     5                 var ref = $this.attr("ref");
     6                 var param = $this.attr("param");
     7                 var cid = Math.round(Math.random()*10000000);
     8                 var select = '<div class="combox"><div id="'+ cid +'" class="select"' + (ref?' rel="' + ref + '"' : ''+ ' name="' + name + '"' + (param ? ' param="' + param+'"' : ''+ '>';
     9                 select += '<a href="javascript:" class="'+$this.attr("class")+'" name="' + name +'" value="' + value + '" change="' + ($this.attr("change")?$this.attr("change"):"")+ '">' + label +'</a></div></div>';
    10                 var options = '<ul class="comboxop" id="op'+ cid +'">';
    11                 $("option", $this).each(function(){
    12                     var option = $(this);
    13                     options +="<li><a class=\""+ (value==option[0].value?"selected":""+"\" href=\"#\" value=\"" + option[0].value + "\">" + option[0].text + "</a></li>";
    14                 });

    上面第3行用$this.attr("value");本意是想取出select里value属性值,但是对于select,$this.attr("value")取到的却是当前选择的option值,对于刚刚加载的select标签来说,这个值永远是第一个option的值,这也就导致了第13行中永远是第一个option加上了selected属性。

    解决这个问题的办法也很简单,就是换一个属性。这里我用ShowValue属性示例,select这样写<select class="combox" ShowValue="abc" />,js中将$this.attr("value");改为$this.attr("showvalue")?$this.attr("showvalue"):$this.val();,这样就解决了combox的问题。

  • 相关阅读:
    start pyhton project(2)
    java.lang.ClassFormatError: Truncated class file
    linux 查看计算机信息命令
    VS2010UltimTrialCHS 版注册码
    VS2008打包安装程序,实现覆盖安装设置
    WPF移动不规则渐变色窗体
    C#下移动无边框窗体(直接粘贴可用)
    TCP通信过程中时时监测连接是否已断开
    WIN7下使用DotNetBar,关闭Aero效果,使用Office2007Form皮肤
    【原创】企业级工作流管理系统评价依据或标准
  • 原文地址:https://www.cnblogs.com/xiaosuiba/p/2091920.html
Copyright © 2011-2022 走看看