Javascript 仅尝试反增量一个正数
表格编号:Javascript 仅尝试反增量一个正数,javascript,Javascript,表格编号: <td><form action="cart.php" method="get"> <input type="button" onclick="buttonSubtract1()" name="subtract1" value="- "/> <input type="text" size="4" id="qty1" name="quantity1" value="0"/> <input type="button" o
<td><form action="cart.php" method="get">
<input type="button" onclick="buttonSubtract1()" name="subtract1" value="-
"/>
<input type="text" size="4" id="qty1" name="quantity1" value="0"/>
<input type="button" onclick="buttonAdd1()" name="add1" value="+"/>
<input type="submit" name="product1" value="Add"/>
我使用javascript将代码更改为增量和反增量,这两种方式都很好,因此我尝试使其仅在数字为正数时才起作用,但现在增量工作正常,但不允许任何数字的反增量。这是为什么?您只需将var qty1=document.getElementById'qty1'。值;在减法函数中,如下所示:
var i = 0;
function buttonAdd1() {
document.getElementById('qty1').value = ++i;
}
function buttonSubtract1() {
var qty1 = document.getElementById('qty1').value;
if (qty1 > 0) {
document.getElementById('qty1').value = --i;}
}
}
在您的示例中,您只需将第一个值0写入窗口objekt。
在窗口对象中再次更改它之前,它将保持为零。
但如果每次调用函数时都询问该值,则始终会得到最新的数字
小提琴:
如果我将submit改为``并添加函数checkPos1{var x=parseIntdocument.getElementById'qty1'。值为10;如果x<0{alertQuantity字段必须包含正数!;返回false;}}而不是尝试onsubmit=checkPos1;在表单标签中,单击提交按钮。这应该行得通,因为submit按钮的返回值不会停止表单submit
var i = 0;
function buttonAdd1() {
document.getElementById('qty1').value = ++i;
}
function buttonSubtract1() {
var qty1 = document.getElementById('qty1').value;
if (qty1 > 0) {
document.getElementById('qty1').value = --i;}
}
}