我使用自定義鍵盤編碼機頂盒的網絡入口。以編程方式將密鑰發送到輸入字段?
鍵盤有大部分標準字符鍵但沒有退格鍵!
由於還有一些其他的免費自定義鍵,我要地圖的其中之一,以退格鍵,當我在輸入字段或文本區域來的。
的問題是:如何編程方式發送退格輸入字段?
或與此有關:如何以編程方式發送的任何按鍵(如箭頭鍵)輸入字段?
我使用自定義鍵盤編碼機頂盒的網絡入口。以編程方式將密鑰發送到輸入字段?
鍵盤有大部分標準字符鍵但沒有退格鍵!
由於還有一些其他的免費自定義鍵,我要地圖的其中之一,以退格鍵,當我在輸入字段或文本區域來的。
的問題是:如何編程方式發送退格輸入字段?
或與此有關:如何以編程方式發送的任何按鍵(如箭頭鍵)輸入字段?
如果你在一個網頁瀏覽器,你可以不假實輸入事件,例如鍵盤和鼠標事件(出於安全原因)。
但是,您將能夠探測到其他的自定義鍵被按下,所以你可以爲你想使用,當你發現它被擠壓剛更新的輸入域密鑰的onKeyDown事件迴應...
我希望它不會來,但我想這是唯一的解決方案,如果你說的是真的。 – KaptajnKold 2009-09-24 16:12:09
你當然*可以*創建和發送事件。 – NickFitz 2009-09-24 16:24:58
這並不完全符合您的要求,但Control-H與大多數情況下的退格鍵相同。
你是什麼意思,但「控制-H」,發送CTRL + H? – erm3nda 2015-02-13 05:39:28
在我使用過的任何瀏覽器中,CTRL + H都會提供歷史記錄。 – PrinceTyke 2015-08-06 19:14:23
使用onkeypress和JavaScript。在腳本中,您可以檢查輸入的映射到退格的字符,並使其對字段中的文本執行該操作。
假設瀏覽器支持W3C事件模型,您可以創建一個KeyEvent
和調度,使用輸入字段的dispatchEvent
方法。在mozilla.org上有example (using MouseEvent
)。也有一些更多的鏈接超過where I last answered this question ;-)
UPDATE:下面的代碼已經在Firefox 3.5進行了測試,並通過在文本字段中的字符成功只後退:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
window.onload = function() {
var field = document.getElementById("foo");
var button = document.getElementById("bar");
button.addEventListener("click", function(event) {
var keyEvent = document.createEvent("KeyboardEvent");
keyEvent.initKeyEvent("keypress", true, true, null, false, false, false, false, 8, 0);
field.dispatchEvent(keyEvent);
}, false);
}
</script>
</head>
<body>
<div>
<input type="text" id="foo" value="abcdef">
<button id="bar" type="button">Fire key event</button>
</div>
</body>
</html>
不錯!非常感謝。 – KaptajnKold 2009-09-25 09:05:40
唉!這在Opera或Webkit中不起作用。 – KaptajnKold 2009-09-25 09:22:57
看起來像WebKit不支持initKeyEvent - 我會看看我能否找到解決方法。 – NickFitz 2009-09-25 09:48:42
對不起。 STB =機頂盒。 – KaptajnKold 2009-09-24 16:09:25