我正在尝试重命名克隆函数中的某些字段,但我不确定如何重命名(增加)字段名称。
var tr = $copy.clone();
tr('input').each(function() {
console.log(this.name);
this.name = something;
});
字段名称示例:
field[subform][0][subsubform][2][name]
在这种情况下,我需要将 [2]
增加到 [3]
。该名称可以有更多或更少的括号,但我总是需要增加倒数第二个括号。
我该如何去做呢?
最佳答案
正则表达式很有趣。匹配模式 [number][string]end of line,读取数字,加一,连接匹配的其他部分,并设置新名称。
$(tr).find("input").prop("name", function() {
return this.name.replace(
/\[(\d+)(\]\[[^[]+]$)/,
function (a,b,c) {
return "[" + (parseInt(b,10)+1) + "]" + c;
}
)
});
关于javascript - jQuery 搜索替换字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13846268/