Преобразовать строку в число, выполнить математику, затем преобразовать ее обратно и дать диапазону это значение в виде строки
Я пытаюсь взять введенные значения из текстовых полей и преобразовать их в строки, общее количество, а затем установить innerHTML <span>
к этому значению.
function addBills(){
var
hundreds = parseInt($("#input100").innerHTML(),10)*100;
fifties = parseInt($("#input50").innerHTML(),10)*50;
twenties = parseInt($("#input20").innerHTML(),10)*20;
tens = parseInt($("#input10").innerHTML(),10)*10;
fives = parseInt($("#input5").innerHTML(),10)*5;
ones = parseInt($("#input1").innerHTML(),10);
regTotal = hundreds+fifties+twenties+tens+fives+ones;
window.alert(regTotal);
/*var regTotal = (($("#input100").innerHTML * 100)+($("#input50").innerHTML * 50)+($("#input20").innerHTML * 20)+($("#input10").innerHTML * 10)+($("#input5").innerHTML *5)+($("#input1").innerHTML));*/
for(var counter = 0;counter<regTotal;counter++){
regString = regTotal.toString();
$("#totalCount").innerHTML("regTotal");
}
};
1 ответ
Ты делаешь это неправильно
Для начинающих.
function addBills(){
var
hundreds = parseInt($("#input100").innerHTML(),10)*100;
hundreds
это единственный местный вар. Все остальные являются глобальными. Исправлено: используйте запятые вместо точек с запятой для разделения переменных в одном выражении var.
Во-вторых, поля ввода имеют value
(не innerHTML
и особенно нет innerHTML()
как функция).
Значения inputfields всегда текстовые. Их можно преобразовать в числа любым Number(string)
или же parseInt(string, radix/base)
(или добавив +
перед строкой).
Наконец, когда у вас есть элемент span, вы просто делаете: elm_span.innerHTML=yourNumber;
а боб твой дядя!
РЕДАКТИРОВАТЬ:
Ваш текущий цикл не имеет смысла.. Я имею в виду, если regTotal
это сумма денег... и у вас есть один промежуток с уникальным идентификатором totalCount
... это совершенно бессмысленно (так же, как пытаться преобразовать totalCount
натянуть пару тысяч раз)
Вы, вероятно, хотите что-то вроде:
function addBills(){
var hundreds = Number(document.getElementById('input100').value)*100
, fifties = Number(document.getElementById('input50').value)*50
, twenties = Number(document.getElementById('input20').value)*20
, tens = Number(document.getElementById('input10').value)*10
, fives = Number(document.getElementById('input5').value)*5
, ones = Number(document.getElementById('input1').value)
, regTotal = hundreds+fifties+twenties+tens+fives+ones
; //end local
document.getElementById('totalCount').innerHTML=regTotal;
}
Рабочий пример возиться здесь
Надеюсь это поможет!