我使用<div>
和<a>
标签在HTML中创建了一个屏幕键盘。在页面上有六个文本输入(firstName,昵称,lastName,笔记,过敏,mobileNumber)。我在JS上的表现不是很好,但如果页面上只有一个输入,我知道该怎么做,但是当有多个输入时我不知道怎么做。我正在努力的部分原因是,一旦我点击一封信,输入框就会失去焦点。
如何将字母附加到所选输入而不会忽略该输入?这是我用来在一个输入上添加一个字母时,它是页面上的唯一输入:
var setClickEvents = function () {
$('.keyboard a.digit').unbind('click').click(function () {
$name = $("input[id$='tbSearchBox']");
$name.val($name.val() + $(this).html());
});
}
HTML键盘按钮 - 只有一个字母,但它与所有字母和数字的样式/设置相同:
<a href="#" class="btn btn-default btn-lg digit">q</a>
答案 0 :(得分:0)
您可以在某些全局变量中保存对焦点输入的引用 并使用它将焦点设置回文本附加功能
<html>
<body>
<script>
var selectedInputId;
function clickBtn(key) {
if (selectedInputId != null) {
selectedInputId.value = selectedInputId.value + key.innerHTML;
selectedInputId.focus();
}
}
</script>
<a href="#" class="btn btn-default btn-lg digit" onclick="javascript:{clickBtn(this)}">q</a>
<input type="text" id="id1" onfocus="javascript:{selectedInputId=this;}" />
<input type="text" id="id2" onfocus="javascript:{selectedInputId=this;}" />
<input type="text" id="id3" onfocus="javascript:{selectedInputId=this;}" />
<input type="text" id="id4" onfocus="javascript:{selectedInputId=this;}" />
</body>
</html>