2011-04-12 22 views
1
<select id="cars" name="cars"> 
    <option value="1">Volvo</option> 
    <option value="2">Ferrari</option> 
    <option value="3">Mercedes</option> 
</select> 

我想选择值为2(法拉利)的选项。我有点新的jQuery。我尝试没有成功如下:如何在jQuery中通过其value属性选择选项标记?

var modelId = 2; 
jQuery("#cars").val(jQuery("#cars option[value=" + modelId + "]").val()); 
+0

可能重复[你怎么选择jQuery中SELECT元素的特殊选项?](http://stackoverflow.com/questions/314636/how-do-you-select-a-particular-option-in-a-select-element-in-jquery) – redsquare 2011-04-12 08:05:42

回答

1
jQuery('#cars option[value=' + modelId + ']').attr('selected', true); 

我倾向于使用什么。

1

jQuery的应该是这样的:

var modelId = 2; 
jQuery("#cars") 
    .find("option[value=" + modelId + "]") 
    .attr("selected","selected"); 

链接的jsfiddle:http://jsfiddle.net/mitchmalone/CLgAS/

而且,这是一个更加灵活的解决方案让您在各种不同的方式来使用它的机会。

1

捎带关闭阿努拉格的完全正确的例子,你应该做的是这样的:

var modelId = /* your value */; 
$('#cars').val(modelId); 

你知道为什么你在你的下拉菜单设置为不管它是你正在做的,当你回来的这样在六个月或一年内维护此代码。此外,如果您需要重构你的代码,现在你基础上,可以在相当传递不是一个神奇的数字,像这样一个变量设置你的价值:

function setModel(modelId) { 
    $('#cars').val(modelId);   
} 
相关问题