jquery - 增加字符串中间的数字

标签 jquery regex attr

我有一系列字符串add[0][types]add[0][name]等(用PHP形式$_POST创建一个数组) .

我需要拉出[0]并使其成为[1]

我已经根据其他一些回复构建了一个正则表达式函数,但它没有更改属性,我不确定我的函数语法是否正确:

newrow.find('input, select').each(function(){
  $(this).attr('name', function(i, val){return val.replace(
    /\\d+/, function(n){ return ++n; });
  });
});

最佳答案

我认为你的正则表达式有点不对劲。您可以通过删除 .each 来缩短代码,以支持 attr 的重载。它需要一个函数(您已经在使用该函数,略有不同):

newrow.find('input, select').attr('name', function(i, val) {
    return val.replace(/\d+/, function(n) {
        return ++n;
    });
});

示例: http://jsfiddle.net/hDELW/1/

关于jquery - 增加字符串中间的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10786642/

相关文章:

python - 如何在字符串中搜索多字串(完全匹配)?

java - 验证文本区域

jquery如何解析对象的类或属性

javascript - 如何修复数据表数据被更新或者破坏表的情况?

javascript - 使用 Jquery 一次淡出两个不同的 div,然后再淡出两个

Jquery:悬停时透明覆盖

javascript - JS 正则表达式匹配单词,排除斜杠包围的单词

javascript - 在 JavaScript 中使用 ajax 调用 Web 服务时出现 "403 forbidden"错误?

javascript - JS。检查输入属性 src 是否包含文本

javascript - jQuery Div 属性(宽度 = $('#immagineCont').attr ('clientWidth'); =未定义