通常从数据库得到的数据需要下拉框text和value相互转换
前面介绍过一片对应的文章
这次反过来讲jquery select下拉框通过text找value
找过多种方法尝试,最后还是感觉用循环option最靠谱
除非<option value="0" text="全部">全部</option>
这样写用
$("#orderstate option[text='全部']").val();
看看html
<th>工单状态:</th>
<td>
<select id="orderstate" class="select" style="width: 108px">
<option value="-1">全部</option>
<option value="0">未审核</option>
<option value="1">未办结</option>
<option value="2">已办结</option>
</select>
</td>
所以用上面的方法没有意义,根本找不到值
下面用循环搞定
var OrderSate = $("#orderstate option[text='" + state + "']").val();
//jquery select下拉框通过text找value
function SelectValue(obj, text) {
var val = "";
$("#orderstate option").each(function () {
if ($(this).text() == text) {
val = $(this).val();
return false;
}
});
return val;
}