我在表中有很多输入字段,每个输入字段就像这样的数组的索引
<input type="text" name="customproperty[0]" />
<input type="hidden" name="customproperty[0]" />
<input type="text" name="customproperty[1]" />
<input type="hidden" name="customproperty[1]" />
.
.
有时客户端删除字段和顺序订单已损坏;
<input type="hidden" name="customproperty[0]" />
<input type="text" name="customproperty[2]" />..
我希望所有这些都是顺序的,所以每次发布之前都会调用此方法;
function arrangeInputNames() {
debugger
var inptSlctr = $("#container");
var allinputs = inptSlctr .find("input")
allinputs.each(function (index, el) {
var newIndex = Math.floor(index / 2);//since there is 2 element for each index
el.name = el.name.replace("old name"," new name");//regex or ?
});
}
我需要这样的正则表达式或任何智能业务逻辑来改变“只有索引号” 我的意思是上面改变的exp不应该是“customproperty [2]”到“customproperty [1]”而是“2”到“1”,因为属性名称总是相同的只有索引可以改变
答案 0 :(得分:1)
使用正则表达式,您可以:
el.name = el.name.replace(new RegExp("\[[\d]+\]"), "[" + newIndex + "]")