Jquery 选择多个选择元素的每个第一个选项
我有一个包含多个select元素的html文件。所需要的是使用jQuery更改select元素的每个第一个选项的文本。给出的答案是Jquery 选择多个选择元素的每个第一个选项,jquery,Jquery,我有一个包含多个select元素的html文件。所需要的是使用jQuery更改select元素的每个第一个选项的文本。给出的答案是$('select').children().first().html('changed!')。但这并不会改变所有第一个选项文本,只会改变第一个选项文本 正确的方法是什么?使用.each(): 注意,在这种情况下,您应该使用text(),而不是html(),因为元素的内容应该是纯文本 或者,您可以直接选择第一个选项元素,避免使用children()和first():
$('select').children().first().html('changed!')代码>。但这并不会改变所有第一个选项文本,只会改变第一个选项文本
正确的方法是什么?使用.each()
:
注意,在这种情况下,您应该使用text()
,而不是html()
,因为
元素的内容应该是纯文本
或者,您可以直接选择第一个选项元素,避免使用children()
和first()
:
使用.each()
:
注意,在这种情况下,您应该使用text()
,而不是html()
,因为
元素的内容应该是纯文本
或者,您可以直接选择第一个选项元素,避免使用children()
和first()
:
您也可以使用来选择第一个、第二个
要更改所有选定元素的文本,可以使用:
$('select option:nth-child(1)').text('changed');
或:
这是因为jQuery提供了
片段:
$(函数(){
//$('select option:nth child(1)')。文本('changed');
//或
$(“选择选项:第n个子项(1)”).text(函数(索引,文本){
返回“已更改”;
});
});代码>
沃尔沃汽车
萨博
梅赛德斯
奥迪
沃尔沃汽车
萨博
梅赛德斯
奥迪
沃尔沃汽车
萨博
梅赛德斯
奥迪
您也可以使用来选择第一个、第二个
要更改所有选定元素的文本,可以使用:
$('select option:nth-child(1)').text('changed');
或:
这是因为jQuery提供了
片段:
$(函数(){
//$('select option:nth child(1)')。文本('changed');
//或
$(“选择选项:第n个子项(1)”).text(函数(索引,文本){
返回“已更改”;
});
});代码>
沃尔沃汽车
萨博
梅赛德斯
奥迪
沃尔沃汽车
萨博
梅赛德斯
奥迪
沃尔沃汽车
萨博
梅赛德斯
奥迪
Jquery中有两个选项在descant上迭代。您使用了children(),它不递归地表示只考虑直接子代。另一个是find(),它递归地表示所有孙子代都与直接子代一起考虑。我认为如果您按照以下方式更改代码:
$('select').find("option").first().html('changed!');
请不要犹豫问。希望有帮助
您需要迭代所有选择:
$("select").each(function(index,item){
$(item).find("option").first().html('changed!');
});
Jquery中有两个选项可以迭代描述。您使用了children(),它不递归地表示只考虑直接子代。另一个是find(),它递归地表示所有孙子代都与直接子代一起考虑。我认为如果您按照以下方式更改代码:
$('select').find("option").first().html('changed!');
请不要犹豫问。希望有帮助
您需要迭代所有选择:
$("select").each(function(index,item){
$(item).find("option").first().html('changed!');
});
是的,我不知道这本书的作者为什么选择.html来完成这个任务。这不是最好的书!这个解决方案是可行的,但直到现在书中才提到。无论如何,谢谢你!是的,我不知道这本书的作者为什么选择.html来完成这个任务。这不是最好的书!这个解决方案是可行的,但直到现在书中才提到。无论如何,谢谢你!谢谢你的回答,奥斯曼。不幸的是,它没有成功;它只改变了第一个选择的第一个选项,没有改变其他选项。谢谢你的回答奥斯曼。不幸的是,它没有成功;它只改变了第一个选择的第一个选项,没有改变其他选项。哇,这是一个很好的答案!非常感谢。这个也很好用。哇,这是一个很好的答案!非常感谢。这个也很好用。