簡體   English   中英

如何從多個元素的相同名稱獲取名稱屬性的索引。

[英]How to get index of name attribute from same name of multiple elements.

我有一些輸入字段,具有相同的名稱,但是我只想像這樣獲取每個輸入的索引值

<input type="text" name="op_price[20]" value="20.00" size="3"  >
<input type="text" name="op_price[2]" value="13" size="3">
<input type="text" name="op_price[14]" value="12" size="3">

因此,例如,我只想從op_price name屬性獲取20、2、14,是他們執行此操作的任何JS或jquery方法

這將返回數組中的索引:

var indexes = $('[name^="op_price"]').map(function(){
    return this.name.match(/\d+/);
}).get();

console.log(indexes); // ["20", "2", "14"] 

使用attributeContains選擇器

例如:

$( "input[name*='man']" ).val();

如果您不打算更改輸入字段的名稱,是否可以遍歷循環以獲取所有值? 嘗試這個:

for(i=0;document.getElementById('op_price['+i+']';i++)
 alert(document.getElementById('op_price['+i+']');

這將在循環的每次迭代中為您提供第i個輸入字段的值!

var name = $("input:text").attr("name");
name = name.replace("op_price[", "").replace("]", "");
alert(name);

演示

就像您擁有姓名財產一樣

   var name="op_price[20]"  

name.replace(/op_price\[(\d*)?]/gi, $1);

然后op_price [20]替換為20

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM