javascript - jquery each 用于所有文本框

标签 javascript jquery

我正在使用以下脚本在每个文本框上绑定(bind)一个按键事件,以便在达到最大长度时,焦点将切换到下一个输入字段。将类名作为参数传递给函数。

function autoFocusPhoneFields(txtbox1ID,txtbox2ID) {
    $('input.'+txtbox1ID+', input.'+txtbox2ID+'').each(function() {
        $(this).bind('keypress', function(){
        if(this.value.length == $(this).attr('maxlength')) {
            $(this).next('input').focus();
        } 
     });
});
}
    $(document).ready(function(){
    autoFocusPhoneFields('mobileprefix','mobilecode');
});

正如我提到的两个不同的输入..它运行良好。但是有没有办法让它获取类名并遍历每个输入框以附加按键事件。

最佳答案

如果我没理解错的话,您想要将相同的事件处理程序附加到每个 input 字段?只需使用选择器:

$(':text') 

(对于所有 input type="text")字段。

所以只是改变

$('input.'+txtbox1ID+', input.'+txtbox2ID+'').each(function() {

到:

$(':text').each(function() {

关于javascript - jquery each 用于所有文本框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7189256/

相关文章:

jquery parent /最近的不工作

通过 setAttribute 设置类时的 JavaScript 奇怪行为

javascript - 如何在不删除数组其余部分的情况下从 React 状态数组中删除组件?

javascript - 重新定义变量

jquery - 悬停时CSS伸缩边框动画

javascript - jQuery动态添加的文字不会加载网页字体样式

javascript - 另一种写javascript的方法

javascript - jQuery:将数字乘以 7.5

javascript - 设置间隔 : why pass a function that returns a function

javascript - 具有圆形组级别的力定向图