我要尋找一個簡單的JS可能禁止撇號的onkeyup的OnKeyPress或那種東西。對於前者,每次用戶按下一個按鍵(如果是撇號),則用空格替換它。我不想在PHP中處理它
我找到了一個代碼,但它將JS綁定到我不想要的文本字段名稱。我需要的東西全球,險要的撇號打字時HTML的textBox
回答
它總是更好的防止擊鍵而不是追溯其刪除。要做到這一點,你需要攔截keypress
事件(keyup
爲時已晚):
document.getElementById('yourTextBoxID').onkeypress = function() {
if (event.keyCode === 39) { // apostrophe
// prevent the keypress
return false;
}
};
如果你只想出現在框中停止'
,但想的按鍵事件傳播到父元素,用event.preventDefault();
代替return false;
。 (通過的Eivind Eidheim Elseth的意見建議)
使用'event.preventDefault()'而不是'return false'可能會更習慣用法。 – 2012-08-17 15:11:45
39是'右箭頭'的keyCode。 – 2012-08-17 15:14:51
@EivindEidheimElseth它們執行不同的事情 - '返回false'相當於調用'preventDefault' **和**'stopPropagation'。 – jbabey 2012-08-17 15:15:21
請從下面的功能。它抓取頁面上的所有input
元素,併爲其中的每個元素分配和keyup
事件處理程序。如果他們發現一個撇號,它會調用preventDefault()
方法..
function listen(event, elem, func) {
if (elem.addEventListener) return elem.addEventListener(event, func, false);
else elem.attachEvent('on' + event, func);
}
listen('load', window, function() {
var inputs = document.getElementsByTagName('input');
for (var i = 0; i < inputs.length; i += 1) {
keyHandler(i);
}
function keyHandler(i) {
listen('keydown', inputs[i], function(e) {
if (e.keyCode === 222) { // 222 is the keyCode for apostrophe
e.preventDefault();
}
});
listen('keyup', inputs[i], function(e) {
if (e.keyCode === 222) { // 222 is the keyCode for apostrophe
e.preventDefault();
}
});
}
});
- 1. textbox撇號改爲html代碼
- 2. Html和JavaScript中的撇號
- 3. 單引號(撇號)打印到屏幕的圓形字母C++
- 4. HTML表單,php和撇號
- 5. Preg替換HTML撇號
- 6. 我的HTML表打印\ u0027而不是撇號
- 7. C#潛在危險錯誤,表單提交中的撇號
- 8. aspx文件中的撇號撇號
- 9. 撇號和NSString的反向撇號
- 10. jQuery刪除從HTML到jQuery字符串後的撇號字符
- 11. Java中的HTML實體解碼:撇號
- 12. 右單撇號與撇號?
- 13. 的撇號
- 14. 撇號的ProcessBuilder
- 15. 何時用撇號包圍SQL字段?
- 16. 需要示例代碼爲撇號CMS 2.0中的撇號模式
- 17. 在html電子郵件中的撇號字符不顯示
- 18. Android SAXParser打斷類似撇號的字符
- 19. 撇號的問題
- 20. mysql_real_escape_string(),但允許帶撇號的名字
- 21. 多選字段中的撇號問題
- 22. 撇號中的jquery/JavaScript字符串
- 23. 帶有撇號的Android字符串
- 24. Zend_Filter和Zend_Validate帶撇號的名字
- 25. 退出字符串的撇號強制
- 26. 逃避撇號的意外字符
- 27. 處理字符串中的撇號
- 28. 如何用雙撇號替換撇號?
- 29. JQuery轉義撇號和雙撇號?
- 30. 用雙撇號取代撇號
向我們展示你找到的代碼,我們可以幫你去適應它。 「全球化」是什麼意思? – Bergi 2012-08-17 15:03:57
「我不想用PHP來處理它。」你將需要在PHP中處理它,因爲你不能相信用戶輸入。 – 2012-08-17 15:11:06