Как я могу добавить значения формы, используя JavaScript? - PullRequest
4 голосов
/ 22 февраля 2011

это код, который я придумал, но все, что он делает, это 1 + 1 = 11, мне нужно, чтобы он сделал 1 + 1 = 2.

<head>
<script type="text/javascript">
function startCalc(){
  interval = setInterval("calc()",1);
}
function calc(){
  one = document.form1.quantity.value;
  two = document.form1.price.value;
  c = one + two 
  document.form1.total.value = (c);
}
function stopCalc(){
  clearInterval(interval);
}
</script>


</head>
<body>
<form name="form1">
Quantity: <input name="quantity" id="quantity" size="10">Price: <input name="price" id="price" size="10"><br>
Total: <input name="total" size="10" readonly=true><br>
<input onclick="startCalc();" onmouseout="stopCalc()" type="button" value="Submit">
</form>

</body>

конечно, это действительно простая форма, но вы поняли пожалуйста, помогите мне сказать, что я делаю не так здесь

Ответы [ 5 ]

6 голосов
/ 22 февраля 2011

Вам нужно использовать parseInt() для преобразования строки в целое число.

c = parseInt(one, 10) + parseInt(two, 10)
3 голосов
/ 22 февраля 2011

используйте это

c = parseInt(one,10) + parseInt(two, 10); 
2 голосов
/ 22 февраля 2011

Вам необходимо преобразовать значения цены в числовые.

используйте parseFloat для цены, поскольку он может иметь десятичные значения.

используйте parseInt с основанием.

e, g:

function calc(){
  one = parseInt(document.form1.quantity.value, 10);
  two = parseFloat(document.form1.price.value);
  c = one + two 
  document.form1.total.value = (c);
}
1 голос
/ 22 февраля 2011

Вы можете использовать + для преобразования строки в число (целое или с плавающей точкой)

c = +one + +two;
0 голосов
/ 19 августа 2013

Вы можете использовать это

  one = document.form1.quantity.value/1;
  two = document.form1.price.value/1;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...