簡體   English   中英

兩次按退出鍵清除表單字段

[英]Pressing the escape key twice clears form fields

我的JSP頁面有問題

當用戶填寫表單字段並按兩次退出鍵時,IE8會自動清除頁面的所有文本字段。 這個問題有解決方案嗎?

或完全禁用此功能的方法?

我使用以下代碼禁用“ Esc”鍵,但問題未解決,代碼無法正常工作

 if (key == 27) {
 cancelKey(event); 
 return false;}

 function cancelKey(evt) { 
    if (evt.preventDefault) { 
    evt.preventDefault(); 
    return false; 
    } 
    else { 
    evt.keyCode = 0; 
    evt.returnValue = false; 
    } 
    } 

任何幫助將不勝感激。

嘗試這個

<script type="text/javascript"> 

(function() /* Prevent Esc deleting imput and if input is readonly, stop backspace acting as 'Back' */
{
  var inps = document.getElementsByTagName( 'input' ), /* Place BELOW all <input>s */
      field;

  function ih( obj, evt, func )
  { 
    obj.attachEvent ? obj.attachEvent( 'on' + evt, func ) : obj.addEventListener( evt, func, false );
  }      

  function k( e )
  {  
    var evt = ( e || window.event ),
        elem = evt.srcElement || evt.target,
        ro = elem.getAttribute('readonly');

    if( evt.keyCode == 27 || ( ro && evt.keyCode == 8 ) )
      evt.preventDefault ? evt.preventDefault() : evt.returnValue = false;  
  };

  for( var i = 0; ( field = inps[ i ] ); i++ ) 
    ih( field, 'keydown', k );          
})()

</script>

它可能會或可能不會。 許多事情[熱鍵]是無法避免的。 來源: http//www.webdeveloper.com/forum/showthread.php?217535-esc-key-clears-html-input-text-values

嘗試這個,

document.attachEvent('onkeydown', function () {
     if (window.event.keyCode == 27) {
           window.event.returnValue = false;
      }
});

暫無
暫無

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

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