簡體   English   中英

我可以使用Enter鍵關閉驗證對話框,但不提交文本框值,而使用Enter作為有效值嗎?

[英]Can I close a validation dialog box with enter key but not submit textbox value but use enter for valid value?

我有一個帶有qty文本框的簡單表單。 我實施了一些最小數量的驗證。 如果用戶輸入的數字低於最小數量,則會出現一個對話框,指出它們低於最小數量,我通過文本框中的onchange事件將值設置回最小。

如果使用鼠標,它將起作用。 問題是,當您按Enter鍵關閉框時,它也會提交表單。 我在想,因為光標在驗證之前位於文本框中。

我使用帶有onkeypress事件的表單檢查來檢查輸入按鈕,以便您可以關閉該框而不提交表單,但是我想我可能希望此功能適用於有效數量或更高的數量,以免我強迫所有人使用提交按鈕。 對話框觸發時,是否可以將焦點從文本框移開,以便用戶可以按Enter鍵而不提交表單,但是使用回車鍵可以得到很好的價值?

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" />

在看不到其余代碼的情況下,您可能需要在提交時使用事件偵聽器,在通過JS手動提交表單之前,在所需輸入值中執行e.preventDefault()和sub所需的任何操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM