0

我有一个带有数量文本框的简单表单。我对最小数量进行了一些验证。如果用户输入低于 min qty 的数字,他们会看到一个对话框,说明它们低于最小值,我通过文本框中的 onchange 事件将值设置回 min。

如果您使用鼠标,它可以工作。问题是当您按回车键关闭框时,它也会提交表单。我在想,因为光标在验证之前就在文本框中。

我使用带有 onkeypress 事件的表单检查来检查输入按钮,以便您可以关闭框而不提交表单,但我想我可能希望此功能用于有效数量或更高数量,更少我强迫每个人使用提交按钮。是否可以在对话框触发时将焦点从文本框移开,以便用户可以按回车键而不提交表单,但随后使用回车键具有良好的价值?

function textQuantDown() {
    //Set min qauntity variable
var min_quant = document.getElementById("min_quant");
//set text box value varaible
var elProd_quant = document.getElementById("prod_quant");
var intProd_quant = (isNaN(elProd_quant.value) || elProd_quant.value.length < 1) ? 2 : elProd_quant.value;  
if( parseInt(intProd_quant) < parseInt(min_quant.value)){
    alert( "Minimum quantity not reached");
    elProd_quant.value = min_quant.value;
}else{
  elProd_quant.value = intProd_quant;}
return false;

}

<input style="border:1px solid; font-size:14px; text-align:left;width:30px;" onchange="return textQuantDown();" name="add_id[1]"  id="prod_quant" size="3" type="text" value="#thisclickquant#"  class="popinp" maxlength="3" />
4

1 回答 1

0

在无法查看其余代码的情况下,您可以在e.preventDefault()通过 JS 手动提交表单之前,在提交、执行和 sub 中添加任何您想要的输入值的事件侦听器。

于 2013-07-18T18:44:37.650 回答