2011-03-07 81 views
0

當我點擊「enter」從jquery-autocomplete結果中選擇一個項目時,表單提交。爲什麼會這樣....jquery-autocomplete

我應該得到的數據在文本字段,並在第二輸入形式應提交...

請建議凡在autocomplete.js改變

謝謝提前

+0

你能顯示你的代碼嗎? – TNC 2011-03-07 09:13:23

+0

ru使用此代碼(http://www.pengoworks.com/workshop/jquery/autocomplete.htm) – diEcho 2011-03-07 09:18:36

回答

1

試試這個:

查找李娜keydown事件,在autocomplete.js文件,然後把這個線在keydown`s事件處理程序結束(它可能有一些switch語句,你有興趣瞭解13 [輸入關鍵代碼] ),:

return false; 

例如:

.keydown(function(e) { 
    // track last key pressed 
    lastKeyPressCode = e.keyCode; 
    switch(e.keyCode) { 
     case 38: // up 
      e.preventDefault(); 
      moveSelect(-1); 
      break; 
     case 40: // down 
      e.preventDefault(); 
      moveSelect(1); 
      break; 
     case 9: // tab 
     case 13: // return 
      if(selectCurrent()){ 
       // make sure to blur off the current field 
       $input.get(0).blur(); 
       e.preventDefault(); 
       return false;   // ADD THIS ! 
      } 

      break; 
     default: 
      active = -1; 
      if (timeout) clearTimeout(timeout); 
      timeout = setTimeout(function(){onChange();}, options.delay); 
      break; 
    } 
}) 

這將停止該事件進一步傳播並提交表單。

+0

case KEY.RETURN: if(selectCurrent()){ //停止默認設置以阻止表單提交,Opera需要特殊處理 event.preventDefault(); blockSubmit = true; 返回false; } break;我有這個......但我不知道在哪裏修改我試圖通過提示線條,但沒有使用:( – 2011-03-07 09:47:27

+0

http://stackoverflow.com/questions/4881401/jquery-autocomplete-hitting-return-submits-theform我的情況是相同的 – 2011-03-07 10:06:09

+0

請參閱http://stackoverflow.com/questions/3794688/jquery-ui-autocomplete-combobox-prevent-form-submit和http://forum.jquery.com/topic/autocomplete-combobox-problem - 當-IT-是放置-內部-A-形式標籤 – 2011-03-07 11:40:33