У меня есть ряд элементов с классом xyz
. Требование - пользователь должен вводить только одно число в них. Затем мне нужно их конкатенировать. Например, их счетчик будет читать 1
2
0
0
..change() JQuery не работает
У меня есть внизу.
$('.xyz').change(function() {
console.log($(this));
arrayNums.length = 0;
var thisRead = parseInt(CombinedNumber(arrayNums), 10);
var lastRead = parseInt($('.abcd').html(), 10);
if ((thisRead - lastRead) <= 1) {
$('#idthing').html("Your Last reading compared to this reading is " + (thisRead - lastRead) + " KWH <br>Are you SURE you want to submit this Reading?");
$('#idthing').attr('style' , 'color: red !important');
}
else { $('#idthing').text(thisRead - lastRead + ' KWH');}
});
function CombinedNumber(arrayNums) {
combined = "";
$('.xyz').each(function (index) {
arrayNums.push($(this).val());
});
$.each(arrayNums, function (index, value) {
combined += value;
});
console.log(combined);
return combined
Это работает в первый раз, если пользователь щелкает от области, прежде чем нажать кнопку отправки, но сначала они могут ударить кнопку отправки. Кроме того, он перестает делать расчет после первого раза!
Я пытаюсь получить отзывчивый расчет каждый раз, когда кто-то вводит число. Вот часть DOM.
<div>
<ul>
<li>
<input class="xyz">
</li>
<li>
<input class="xyz">
</li>
</ul>
</div>
Вы получаете 'input', имеющие класс' xyz' на странице загрузки? –