我有一个表格,列出产品的剩余数量,下面是一个输入字段,可让您将数量放入表单提交购买。
我将剩余数量包含在带有ID的范围内。 在keyup上,我想比较span的值和输入到字段中的输入。
如果输入大于span中的值,则在keyup上,我想将输入值更改为0或等于span ID值。
这是我试图用来完成此操作的javascript:
<script>
$(document).ready(function () {
document.getElementById('one_and_done_stool_QTY_check').keyup(Qty_check);
function Qty_check(){
var QTY1check = document.getElementById('one_and_done_stool_QTY_check').value;
var QTY1remain = document.getElementById('one_and_done_stool_QTY_remain').innerHTML;
if (QTY1check.value > QTY1remain.innerHTML)
alert("NOPE");
{document.getElementById("one_and_done_stool_QTY_check").value = 0;}
};}
</script>
这是html:
<span id="one_and_done_stool_QTY_remain">2</span>
<input id="one_and_done_stool_QTY_check" type="text" name="one_and_done_stool">
答案 0 :(得分:0)
你的主要问题在于这一行:
document.getElementById('one_and_done_stool_QTY_check').keyup(Qty_check);
您可以填写表格:
document.getElementById('one_and_done_stool_QTY_check').onkeyup = Qty_check;
或者您可以直接使用input event:
document.getElementById('one_and_done_stool_QTY_check').addEventListener('input', Qty_check);
或jQuery方式:
$('#one_and_done_stool_QTY_check').on('input', Qty_check);
摘录:
document.getElementById('one_and_done_stool_QTY_check').addEventListener('input', Qty_check);
function Qty_check(e) {
var QTY1check = +document.getElementById('one_and_done_stool_QTY_check').value;
var QTY1remain = +document.getElementById('one_and_done_stool_QTY_remain').textContent;
if (QTY1check > QTY1remain) {
console.log("NOPE");
document.getElementById("one_and_done_stool_QTY_check").value = 0;
}
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span id="one_and_done_stool_QTY_remain">2</span>
<input id="one_and_done_stool_QTY_check" type="text" name="one_and_done_stool">
&#13;