前言:今天使用到dwz的combox组件,根据官方API上写的“value属性则用来指定combox的默认值”,但是经过实践发现,该属性并没有起到作用,结合到dwz的检索功能,还会重新刷新当前navTab,经过对dwz源码的分析,做了以下的调整
第一步:先对页面做以下处理,把text值和value值写一致,另外在select上加上一个扩展的属性svalue
<label>状态:</label>
<c:choose>
<c:when test="${status != null}">
<select class="combox" id="status" name="status" svalue="${status}">
<option value="全部">全部</option>
<option value="启用">启用</option>
<option value="停收新单">停收新单</option>
<option value="停用账户">停用账户</option>
</select>
</c:when>
<c:otherwise>
<select class="combox" id="status" name="status" svalue="启用">
<option value="全部">全部</option>
<option value="启用">启用</option>
<option value="停收新单">停收新单</option>
<option value="停用账户">停用账户</option>
</select>
</c:otherwise>
</c:choose>
第二步:修改dwz.combox.js,见如下位置
return this.each(function(i){
var $this = $(this).removeClass("combox");
var name = $this.attr("name");
var value= $this.attr("svalue");
var label = $("option[value=" + value + "]",$this).text();
var ref = $this.attr("ref");
var refUrl = $this.attr("refUrl") || "";
将原来的“var value = $this.val()”修改为“var value = $this.attr("svalue")”
经过以上内容的修改,就可以直接通过select的svalue对下框进行赋值操作。