是否可以根据文本字符串更改所选内容?

时间:2010-10-09 02:40:23

标签: jquery

我正在尝试根据文本

将select选项设置为选中
$("#request_showdate_2i").val("November");


<select name="request[showdate(2i)]" id="request_showdate_2i">
<option value="1">January</option>
<option value="2">February</option>
<option value="3">March</option>
<option value="4">April</option>
<option value="5">May</option>
<option value="6">June</option>
<option value="7">July</option>
<option value="8">August</option>
<option value="9">September</option>
<option value="10" selected="selected">October</option>
<option value="11">November</option>
<option value="12">December</option>
</select>

没有任何变化......我没有可用的月份值部分,只是字符串...任何建议

3 个答案:

答案 0 :(得分:1)

好吧,使用:contains()选择器可以在这里工作:

var month = "December";
$("#request_showdate_2i > option:contains("+ month +")").attr('selected', true);

请参阅:http://www.jsfiddle.net/yijiang/YEXZt/

答案 1 :(得分:1)

$("#request_showdate_2i").val(
    $("#request_showdate_2i option:contains('October')").attr('value')    
);

答案 2 :(得分:0)

你为什么需要这样做?你从哪里得到“十一月”?如果您自己输入,那么您只需使用数字代替val。

或者,如果没有定义value属性,则选项将作为其val返回其内部文本。也就是说,如果删除值属性,上面的jQuery将正常工作。你仍然需要这些数字的原因吗?