2013-10-01 50 views
2

如何顯示文本框中的高位字母,低位字母,刪除,退格和禁用空格鍵?如何在javascript中刪除,退格並禁用空格鍵?

<html> 
<head> 
    <script type="text/javascript"> 
    function foo(e) { 
    var allow=' ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_' 
    var k; 
    k=document.all?parseInt(e.keyCode): parseInt(e.which); 
    return (allow.indexOf(String.fromCharCode(k))!=-1); 
    } 
</script> 
</head> 
<body> 
    <input type="text" onKeyPress="return foo(event)" /> 
</body> 
</html> 

請幫我謝謝...

+0

Duplicate:http://stackoverflow.com/questions/14236873/disable-spaces-in-input-and-allow-back-arrow – rags

回答

1

嘗試jQuery的一些什麼樣的這和它的工作。

$("[id*='yourid']").keydown(function (event) { 
    // Allow: backspace, delete, tab, escape, and enter 
    if (event.keyCode == 46 || event.keyCode == 8 || event.keyCode == 9 || event.keyCode == 27 || event.keyCode == 13 || 
     // Allow: Ctrl+A 
     (event.keyCode == 65 && event.ctrlKey === true) || 
     // Allow: home, end, left, right 
     (event.keyCode >= 35 && event.keyCode <= 39)) { 
     // let it happen, don't do anything 
     return; 
    } else { 
     // Ensure that it is a number and stop the keypress 
     if (event.shiftKey || (event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 96 || event.keyCode > 105)) { 
      event.preventDefault(); 
     } 
    } 
}); 
+0

非常感謝你,這可以幫助我 –

0

我想出了下面的代碼:

jQuery('#input_id', function(e){ 
    // Allow: backspace, delete, tab, escape, enter 
    if (jQuery.inArray(e.keyCode, [46, 8, 9, 27, 13, 110]) !== -1 || 
     // Allow: Ctrl+A 
     (e.keyCode === 65 && e.ctrlKey === true) || 
     // Allow: Ctrl+C 
     (e.keyCode === 67 && e.ctrlKey === true) || 
     // Allow: Ctrl+X 
     (e.keyCode === 88 && e.ctrlKey === true) || 
     // Bug in some Android devices where it is always 229 
     (e.keyCode === 229) || 
     // Allow: home, end, left, right 
     (e.keyCode >= 35 && e.keyCode <= 40)) { 
     // let it happen, don't do anything 
     return; 
    } 
    // Ensure that it is a number and stop the keypress 
    if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) && (e.keyCode < 96 || e.keyCode > 105)) { 
     e.preventDefault(); 
    } 
}); 

另外的形式應該有autocomplete="off"。沒有這個選項,你可能會在移動設備上使用自動完成算法。