解决easyui combobox赋值boolean类型的值时,经常出现的内容显示的value而不是text的bug
版本:EasyUI 1.7.0
在用easyui写项目时,碰到一个combobox的奇葩bug。代码如下:
<div>
<select class="easyui-combobox" id="edit_sex" name="sex" data-options="label:'性别:', width:300, required:true">
<option value="true">男</option>
<option value="false">女</option>
</select>
</div>
赋值语句如下:
$('#edit_sex').combobox('setValue', row.sex);
本来这是一个很简单的combobox赋值,但是当我真正赋值时却出现了问题,经常出现一个bug,就是赋值完,combobox显示的内容是true或者false,而不是男或女,而且重现率极高。
我在测试了其他赋值情况后,发现是row.sex的值存在问题。该值是boolean类型,combobox赋值boolean类型的值的时候,会经常出现显示内容为value而不是text的bug。
那么问题解决起来就简单了,把boolean类型改为字符串。修改后的赋值语句如下:
$('#edit_sex').combobox('setValue', String(row.sex));
暂时不得而知bug原因。如果有人知道麻烦解答,谢谢。