Regexp: Как я могу найти поля формы, названные с определенной последовательностью символов в форме, используя JavaScript? - PullRequest
0 голосов
/ 04 сентября 2010

У меня есть форма, которая среди прочего содержит текстовые входы, которые содержат арифметические данные (цены) Элементы и их имена генерируются динамически. Я хотел бы только «найти» поля, содержащие арифметические значения, основанные на их именах (т. Е. Имя элемента примера будет price_500_365 (из price_PRODUCTID_ORDERID). Поэтому я хочу найти все текстовые входы, содержащие «price» в своих именах или идентификаторах, используя регулярное выражение и суммировать их. Я не уверен, как это сделать. Есть идеи?

Ответы [ 2 ]

2 голосов
/ 04 сентября 2010

Вы можете пройтись по элементам формы, например так:

var form = document.getElementById("myForm"), sum = 0;
for(var i=0; i<form.elements.length; i++) {
   var e = form.elements[i];
   if(e.type === 'text' && /price/.test(e.name)) sum += parseFloat(e.value);
}
alert(sum);

Вы можете проверить это здесь , если вы не имеете дело с <input> элементами строго, вывозможно, потребуется изменить проверку if, чтобы включить / исключить больше элементов.

2 голосов
/ 04 сентября 2010

используя jQuery, вы можете сделать это так:

$('input[name*="price"]');

...