我正在尝试使用父级div ID更改子级的div ID, 例如:
<div id="parent">
<div id = "child">
</div>
</div>
尝试了几件事:
$('#parent #child').attr('id', 'modifyChildId');
$('div#parent' > 'div#child').attr('id', 'modifyChildId');
$('div#parent').find('div#child').attr('id', 'modifyChildId');
我了解可以通过使用子ID本身来更改ID,例如:
$('div#child').attr('id', 'modifyChildId');
但是这里的场景是:
我有两个具有相同ID的子元素,例如:
<div id="global_parent">
<div id = "child">
</div>
</div>
.
.
.
.
<div id="parent">
<div id = "child">
</div>
</div>
我必须更改父级的子级div的ID。
答案 0 :(得分:0)
尝试一下。
$('#parent> #child').attr('id', 'modifyChildId');
另一种选择是使用find()
方法:
$('#parent').find('#child').attr('id', 'modifyChildId');
.find()
方法允许我们在DOM树中搜索这些元素的后代,并从匹配的元素构造一个新的jQuery对象。
答案 1 :(得分:0)
尝试一下
var regex = /^[a-zA-Z]+$/;
if(regex.test(name)) {
//Doing something if string name not matched with Regex
}
答案 2 :(得分:0)
您的页面上永远不应有两个具有相同ID的元素。
您应该改用类
<div id="global_parent">
<div class="child">
</div>
</div>
.
.
.
.
<div id="parent">
<div class="child">
</div>
</div>
然后使用选择器$("#parent > .child")
答案 3 :(得分:0)
从问题的上下文来看,我了解到您正在将DOM元素插入div#parent
中。
发生这种情况时,jQuery无法检测到新插入的元素。如果加载页面时出现div#parent
,请尝试以下操作:
$("#parent").find("#child").attr('id', 'modifiedChildId')})
如果您没有div#parent
,请尝试以下操作:
$(document).find("#parent").find("#child").attr('id', 'modifiedChildId')})