Для этой функции я пытаюсь вычислить результат переменных $ r и отобразить их в текстовом поле ввода формы «otherHtmlIdName».Javascript parseInt - Код работает 4 раза
Оператор if проверяет, имеют ли все значения значения, затем получает значение рассчитанной переменной и изменяет поле ввода. Он отлично работает, проблема в том, что он работает 4 раза подряд, один раз за каждые parseInt()
.
Есть ли способ, я могу просто запустить его один раз? Я пробовал parseFloat
и Number
. Не помогло.
[Изменить]: Этого не происходило из-за parseInt. Я вызывал функцию click в этом ID 4 раза в моем коде.
$("#htmlIdName").click(function() {
var variableName = parseInt($r.ab3, 10) - parseInt($r.ab4, 10) + parseInt($r.sb3, 10) + parseInt($r.sb4, 10);
if ($r.ab3 && $r.ab4 && $r.sb3 && $r.sb4) {
$("#otherHtmlIdName").val(variableName);
$("#otherHtmlIdName").change();
};
});
Что именно вы имеете в виду, что он «работает» один раз для каждого вызова 'parseInt()? Как вы можете сказать? Это не имеет никакого смысла. – Pointy
Привет. Добро пожаловать в StackOverflow. Я не уверен, что понимаю, о чем вы спрашиваете. Вы говорите, что обработчик кликов работает 4 раза, или что вы должны вызывать parseInt 4 раза? – Ludo
Если это последний, у вас действительно нет выбора, так как числа, которые вы обрабатываете, различны (ab3, ab4, sb3, sb4). Вы должны вызвать parseInt 4 раза. – Ludo