Простая математика с jQuery - деление - PullRequest
0 голосов
/ 18 октября 2011

У меня есть два входа в div, которые я хочу разделить один на другой.

<div>

<input type="number" id="a"> / <input type="number" id="b">

<input type="submit">

<p class="result">RESULT HERE</p> 

</div>

Как это можно сделать с помощью jquery?

Ответы [ 2 ]

13 голосов
/ 18 октября 2011

Это действительно зависит от того, когда вы хотите, чтобы расчеты имели место, но сама математика невероятно проста. Просто используйте стандартный оператор деления , /:

var num1 = $("input[label='a']").val(),
    num2 = $("input[label='b']").val(),
    result = parseInt(num1, 10) / parseInt(num2, 10);
$(".result").text(result);

Полагаю, это также зависит от того, хотите ли вы поддерживать целочисленное деление (вот почему я использовал parseInt - вы можете использовать parseFloat при необходимости).

Кроме того, как указано в комментариях к вашему вопросу, label не является допустимым атрибутом. Лучшим вариантом будет использовать id, или, если вам нужно использовать атрибут с произвольным именем, используйте атрибуты HTML5 data-*.

Обновление на основе комментариев

Поскольку вы заявили, что хотите, чтобы код запускался при нажатии кнопки, все, что вам нужно сделать, это привязаться к событию click:

$("#someButton").click(function() {
    //Do stuff when the button is clicked.
});
0 голосов
/ 18 октября 2011

Вы смешиваете свою разметку со своей логикой.Вы не можете разделить элементы HTML друг с другом, они предназначены только для структурного представления.Вместо этого вы должны получить их значения с помощью JavaScript, применить математические и обновить HTML с результирующим значением.

...