0

我想在字符串中选择一个选项,其中字符串将是下拉列表的内容,但我不知道如何将字符串作为对象循环。在示例中,我希望选择“Saab”并提醒字符串。

var x = '<select><option>Volvo</option>   <option>Saab</option>   <option>Mercedes</option>   <option>Audi</option> </select>';

$.each($(x), function(index, value) { 
    if ($(this).val() == "Saab"){
        $(this).attr("selected","selected")
    }
});
alert(x);
4

4 回答 4

3

首先将字符串转换为 jQuery 对象:

var x = $(x);

然后只需选择正确的选项并将其设置为选中:

$('option:contains("Saab")', x).prop('selected', true);

小提琴

于 2012-07-13T07:35:12.577 回答
0
$.each($('option', x), function(index, value) { 
    if ($(this).text() == "Saab"){
        $(this).attr("selected","selected")
    }
});
于 2012-07-13T07:20:10.680 回答
0

这是在 HTML 页面中吗?如果是,为什么不直接使用 $("option").each() 之类的东西呢?

于 2012-07-13T07:20:40.620 回答
0

不需要循环,jquery 可以为你做

$(x).children('option:contains("Saab")').attr('selected','selected');

参考:http ://api.jquery.com/category/selectors/

于 2012-07-13T07:21:34.087 回答