Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 更新方括号中的值_Javascript_Jquery - Fatal编程技术网

Javascript 更新方括号中的值

Javascript 更新方括号中的值,javascript,jquery,Javascript,Jquery,我有一个名称为的字段,例如: nameVariants[0].texts[en_GB] nameVariants[1].texts[nl_BE] 我的代码允许我通过javascript添加动态字段,因此我必须更新字段的索引。但是如何只针对并更新第一个括号[0]、[1] 我试图用这种方式维护索引,用索引替换所有名称 looping fields with index (idx) $(this).attr("name", function() { var name = $(this)

我有一个名称为的字段,例如:

nameVariants[0].texts[en_GB]
nameVariants[1].texts[nl_BE]
我的代码允许我通过javascript添加动态字段,因此我必须更新字段的索引。但是如何只针对并更新第一个括号[0]、[1]

我试图用这种方式维护索引,用索引替换所有名称

looping fields with index (idx)
$(this).attr("name", function() {
       var name = $(this).attr("name");
       name.replace(new RegExp('\\[\\d+\\]'), idx);
       return name;
});
但它似乎不起作用。My dynamic field的名称为nameVariants[].text[en_GB],因此它还必须找到空的方括号。

替换idx后,您需要重新分配名称值

name = name.replace(/\[\d+\]/, '[' + idx + ']')
例:


您需要什么输出…?是的,诀窍是不使用/g@Cherniv还需要重新分配返回值,这似乎有效。是否可以调整以使其命中adn更新名称变体[]。文本[en_GB]-其中索引括号为空?请尝试使用\d*而不是\d+这很有效-非常感谢!
$(this).attr("name", function() {
       var name = $(this).attr("name");
       return name.replace(/\[\d+\]/, '[' + idx + ']');
});