我有以下元素:我如何在jQuery中替換它?
<span data-valmsg-for="Company.People[0].Name" />
我想什麼做的,是採取「數據valmsg換」屬性和格式化它看起來像這樣:
var idToLocate = "Company.People_0__Name";
哪有我用jQuery完成了這個?
我有以下元素:我如何在jQuery中替換它?
<span data-valmsg-for="Company.People[0].Name" />
我想什麼做的,是採取「數據valmsg換」屬性和格式化它看起來像這樣:
var idToLocate = "Company.People_0__Name";
哪有我用jQuery完成了這個?
將屬性值轉換爲javascript變量後,不需要jQuery。你可以簡單地做就可以替換操作將其轉換到你想要的形式:
var str = "Company.People[0].Name";
var idToLocate = str.replace(/\[(\d+)\]\./,"_$1__");
// idToLocate will now be "Company.People_0__Name"
你可以看到它在這裏工作:http://jsfiddle.net/jfriend00/XYwbL/。
獲取$('span').attr('data-valmsg-for')
的屬性並將其設置爲$('span').attr('data-valmsg-for', value)
。
試試這個
var idToLocate = $('span').attr('data-valmsg-for').replace('[', '_').replace('].', '__');
http://jsfiddle.net/UbcPH/只有改進將是一個更獨特的選擇器,以確保它在示例外工作。 http://jsfiddle.net/UbcPH/1/'$('span [data-valmsg-for^=''Company.People''')。attr('data-valmsg-for')。replace(' [','_')。replace(']。','__');' –
解決方案的問題在於它不會提取可以爲0+的數值。我會怎麼做? – Mike
@Beavis - 您不必擔心這個問題,它會在修改過的字符串中保留該數字。 – ShankarSangoli
如何將佔到所有數值? 0只是我的例子,但我可能有0多個。可能實際上低於1000的任何東西。 – Mike
@Beavis - 我修改了我的答案,爲括號中的任何數字值工作。 – jfriend00
太棒了,謝謝! – Mike