JQuery.each() с элементами ввода
//save tablet
jQuery("#savetablet"+jTablets[i].idtablets).on('click', function()
{
alert("alertsepy2...");
console.log(jTablets[i].idtablets);
jQuery("#tablet"+jTablets[i].idtablets+" .detailsrow").each(function( index ) {
$(this).each(function( index2 ) {
console.log($(this).html());
});
});
});
<div class="column0"><input type="text" value="-D"></div>
<div class="column1"><input type="text" value="D"></div>
<div class="column2"><input type="text" value="D"></div>
<div class="column3"><input type="number" value="0"></div>
<div class="column4"> <input type="number" value="0"></div>
<div class="column5"> <input type="number" value="0"></div>
<div class="column6"><input type="number" value="0"></div>
<div class="column7"><input type="number" value="0"></div>
<div class="column8"><input type="number" value="0"></div>
<div class="column9"> <input type="number" value="0"></div>
<div class="column10"> <input type="number" value=""></div>
<div id="tablet17row0" class="column11">11</div>
<div class="column0"><input type="text" value="-D"></div>
<div class="column1"><input type="text" value="D"></div>
<div class="column2"><input type="text" value="D"></div>
<div class="column3"><input type="number" value="0"></div>
<div class="column4"> <input type="number" value="0"></div>
<div class="column5"> <input type="number" value="0"></div>
<div class="column6"><input type="number" value="0"></div>
<div class="column7"><input type="number" value="0"></div>
<div class="column8"><input type="number" value="0"></div>
<div class="column9"> <input type="number" value="0"></div>
<div class="column10"> <input type="number" value=""></div>
<div id="tablet17row1" class="column11">21</div>
У меня есть вышеупомянутый jQuery.each(), который выводит прикрепленный HTML к консоли. В этом случае я хочу извлечь val() только входных элементов либо типа текста, либо номера типа. Есть ли способ изолировать только элементы ввода, чтобы я мог получить их значения в массив?
Спасибо заранее...
Ответы
Ответ 1
Чтобы извлечь номер:
var arrNumber = new Array();
$('input[type=number]').each(function(){
arrNumber.push($(this).val());
})
Чтобы извлечь текст:
var arrText= new Array();
$('input[type=text]').each(function(){
arrText.push($(this).val());
})
Изменить: .map
реализация
var arrText= $('input[type=text]').map(function(){
return this.value;
}).get();
Ответ 2
Предположим, что все входные элементы внутри формы u могут ссылаться на приведенный ниже код.
// get all the inputs into an array.
var $inputs = $('#myForm :input');
// not sure if you wanted this, but I thought I'd add it.
// get an associative array of just the values.
var values = {};
$inputs.each(function() {
values[this.name] = $(this).val();
});
Ответ 3
$.each($('input[type=number]'),function(){
alert($(this).val());
});
Это будет предупреждать значение полей input type number
Демонстрация присутствует в http://jsfiddle.net/2dJAN/33/