jQuery根据公式更改所有子代DOM ID

jQuery根据公式更改所有子代DOM ID,jquery,jquery-selectors,Jquery,Jquery Selectors,我正在用jQuery克隆一个DOM元素,jQuery是一个具有许多子体的div。在将克隆的div插入DOM之前,我需要更改具有一个的子体的id属性。我可以对我知道的id的元素执行以下操作(假设newElem是我在插入前阶段克隆的元素): 我的问题是要克隆的div的一部分是通过编程生成的。这一部分有许多(几十个)div。在插入DOM之前,我需要修改克隆的div中生成的ids末尾的数字,但在加载页面之前,我不知道每个id的开头是什么 我如何编写一些东西来有效地捕获以\u 0\u 0结尾的ids的所有

我正在用jQuery克隆一个DOM元素,jQuery是一个具有许多子体的
div
。在将克隆的
div
插入DOM之前,我需要更改具有一个的子体的
id
属性。我可以对我知道的
id
的元素执行以下操作(假设
newElem
是我在插入前阶段克隆的元素):

我的问题是要克隆的
div
的一部分是通过编程生成的。这一部分有许多(几十个)div。在插入DOM之前,我需要修改克隆的
div
中生成的
id
s末尾的数字,但在加载页面之前,我不知道每个id的开头是什么


我如何编写一些东西来有效地捕获以
\u 0\u 0
结尾的
id
s的所有元素(div的第一部分未知),并将这些
id
s更改为~whatever~+num1\u num2?我知道我可以使用通配符捕获以
\u 0\u 0
结尾的所有元素,但我不知道如何在重写ID时重用“捕获的”通配符部分。

prop
方法接受2个参数,索引和oldProperty,这里不需要创建jQuery对象,+1用于使用
prop
方法。这非常有效——谢谢。在实现之后,我意识到需要修改的一些id在
\u0\u0
字符串之后包含了一些东西,所以我修改如下:
newElem.find('[id*=\u0\u0]').prop('id',function(){var x=$(this).prop('id').split(''u0',2);返回x[0]+'+num1++num2+x[1]})
$('[id$="_0_0"]').prop('id', function(index, currentID) {
    return 'question_' + num1 + '_' + index;
}) 
$('[id$="_0_0"]').prop('id', function(index, currentID) {
    return 'question_' + num1 + '_' + index;
}) 
$('[id$=_0_0]').prop('id', function(){
    var x = $(this).prop('id').split('_')[0]; //part before _0_0
    return x +'_'+ num1 + '_' + num2;
});