我有以下代码
<select id="practice_id" name="practice" column="practice" style="width: 200px">
<option value="">Default</option>
<option value="1">Test 1</option>
<option value="2">Test 2</option>
<option value="3">Test 3</option>
...............
</select>
我需要做的是根据查询字符串编号将所选项目的值更改为1(我可以将此值设置为正确)
我正在尝试使用jQuery更改值,但我尝试过的任何内容似乎都无法正常工作。
$('#practice_id').val('QUERY_STRING_NUMBER');
这似乎不起作用,因为价值没有变化。
我在这里弄错了什么?
由于
答案 0 :(得分:10)
您需要选择option
元素,而不是select
元素:
(function($) {
$('#practice_id').change(function() {
var val = $(this).val();
alert(val);
$('option[value=' + val + ']', this).val('changed');
});
})(jQuery);
答案 1 :(得分:2)
$('#practice_id').val('QUERY_STRING_NUMBER');
这是设置下拉列表的值,而不是“更改”下划线选项值。
$(document).ready(function() {
$("#practice_id").children().val("-99");
});
这会将所有选项标记的值更改为-99。
注意:是的,您可以通过jQuery执行此操作。但是,根据大多数日常常见情况,我认为您的服务器端脚本/页面将生成正确的值。