我得到一個輸入元素的名字,這是一個帶有數字的字符串(url1
)。我想以最簡單和最快的方式將數字加1(url2
)。用正則表達式增加一個字符串中的數字
我的辦法是讓\d
/restofstring,++
比賽,然後放在一起數與restofstring。有沒有更好的辦法?
更新:
我最終啞代碼變成了:
var liNew = document.createElement('li');
liNew.innerHTML = liOld.innerHTML;
var els = Y.Dom.getChildrenBy(liNew, function(el) {
return el.name.match(/\d+$/);
} // YUI method where the function is a test
for (var i = 0, el; el = els[i]; i++) {
el.name = el.name.replace(/\d+$/, function(n) { return ++n });
}
list.appendChild(liNew);
呃,你不能只改變IE中的表單元素名稱。你會遇到問題:http://stackoverflow.com/questions/1650797/setting-name-of-dom-created-element-fails-in-ie-workaround – 2009-11-16 16:13:23
好的,謝謝你的頭。如果我最終需要爲此支持IE,我將使用YUI元素。 – 2009-11-16 16:33:59