我尝试创建类似“虚拟”键盘的东西,用于在文本框中输入一些特殊字符。以下实现在 Chrome 中可以正常工作,但在任何其他浏览器中则不行。
如何修改它以在大多数浏览器(FF、IE、Chrome)中工作,并在我需要多个输入字段的情况下使其支持插入符位置?
代码如下:
<html>
<head>
<style type="text/css">
.key {
padding: 10px;
margin: 0px;
background-color: #f3f3f3;
display: inline-block;
}
</style>
</head>
<body>
<form name="form1">
Text: <input type="text" name="field1"><br>
<br>
<a href="javascript:document.form1.field1.value=document.form1.field1.value+'Æ';return false;" class="key">Æ</a>
<a href="javascript:document.form1.field1.value=document.form1.field1.value+'ø';return false;" class="key">ø</a>
</form>
</body>
</html>
我也尝试过改变这个
<a href="javascript:document.form1.field1.value=document.form1.field1.value+'Æ';return false;" class="key">Æ</a>
对此:
<a href="javascript:document.forms("form1").field1.value=document.forms("form1").field1.value+'Æ';return false;" class="key">Æ</a>
最佳答案
有很多不同的方法可以做到这一点,我附加了事件处理程序。我推荐 JQuery .on() 或 .click() 事件。另外尽量不要做内联JS,这是非常糟糕的做法。
var Key248Btn = document.getElementById('Key248Btn');
Key248Btn.addEventListener("click", Key248_Click, false);
function Key198_Click()
{
textEntryField.value += "\u00e6";
return false;
}
关于javascript - 从 href 单击输入文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24656424/