我动态创建输入框以捕获某个单词的输入(例如,'hello'的H E L L O)。我希望在每个输入框中键入单个字符后将焦点设置到下一个输入框。我该怎么做?
<ui:repeat value="#{alphabets}" var="alphabet">
<h:inputText value="#{alphabet.value}"/>
</ui:repeat>
答案 0 :(得分:2)
这将成功
// script
function jumpNext(input) {
$(input).next("input[type=text]").focus();
}
// jsf
<ui:repeat value="#{alphabets}" var="alphabet">
<h:inputText value="#{alphabet.value}" onkeyup="jumpNext(this)" />
</ui:repeat>
答案 1 :(得分:0)
这取决于HTML结构的方式。最简单的方法是为每个输入提供一个ID(这总是一个好主意),而不是在事件处理程序中为以下inpunt设置id:
<input id="char1" onkeyup="document.getElementById('char2').focus()" />