2013-07-25 51 views
0

我有一個輸入,它通過ajax發送它的值並保存到db中。我需要防止發送空值或值不是數字,應該是,反之亦然。所以我在幾個if/else塊之後調用ajax函數。這工作正常,但可以將無效的改變的輸入設置爲以前的值?例如,我有一個輸入值爲「456321」。用戶將其更改爲「abcde」。它不是數字,因此它不會發送到服務器,但我需要將值更改回「456321」。將無效輸入設置爲初始值

回答

2

保留一個隱藏字段,將填充初始值。 假設您在文本框中顯示值「4321」。只需將該值加載到文本框以及隱藏字段中即可。現在,在您發出AJAX請求時更改此值,因此如果值正確,只需使用正確的值更新隱藏字段,否則只需將文本框中的值替換爲隱藏字段中的值即可。希望這有助於...

示例代碼:

<input type="text" id="textbox" value="1234"/> 
<input type="hidden" id="hidden" value="1234"/> 

$('#textbox').change(function(){ 
    if(parseInt($('#textbox').val())) 
     { 
      $('#hidden').val($('#textbox').val()); 
      //Make AJAX request 
     } 
     else 
     { 
      $('#textbox').val($('#hidden').val()); 
     } 
}); 
+0

這是它應該工作好主意。 –

相關問題