JQuery 选择子元素(如果不是直接在父元素下,则不确定是否可选)

JQuery to select child element(not sure if selectable if not directly under parent)

本文关键字:元素 不确定 是否 选择 如果不 JQuery      更新时间:2024-05-03
<div id="A">ABC
<div class="B">bcs</div>
<div class="C"></div>
<select id="D" style="width:200px;">
    <option value="abc">abc</option>
    <option value="123">123</option>
</select>
</div>

我想测试以选择选项并更改其值

jQuery(function () {
var A = document.getElementById("A");
var B = A.getElementsByTagName("select";)
B.getElementsByTagName("option").val('123');
});

http://jsfiddle.net/Ddj6P/

代码看起来不错,但不起作用。

你很接近。

getElementsByTagName返回一个数组,因此您希望获取第 0 个索引。 此外,您希望在选择而不是选项上设置值

var B = A.getElementsByTagName("select")[0];
B.value = '123';

还要注意我纠正的语法错误,正如菲利克斯在他的评论中指出的那样。


或者,既然你已经在使用jQuery,为什么不直接做:

jQuery('#A select').val('123');
你也可以

使用 -

jQuery(function () {
    $('select option:contains("123")').prop('selected', true);
});

试试这个:

$(function () {
  var A = $('#A');
  var B = A.children('#D');
  B.children('option:selected').val('123');
});

这是jsfiddle