jQuery动态对象选择器

时间:2012-12-03 19:55:44

标签: javascript jquery

看看以下代码:

        this.forms = {
            signIn: {
                email: $('#tb-input-sign-in-email'),
                password: $('#tb-input-sign-in-password')
            },
            signUp: {
                fullName: $('#tb-input-sign-up-full-name'),
                email: $('#tb-input-sign-up-email'),
                password: $('#tb-input-sign-up-password')
            }
        };

这是我的旧代码初始化我的textbox jQuery插件:

$('#tb-sign-in-email, #tb-sign-in-password').textbox();

新代码(使用this.forms数组)将是:

this.forms.signIn.email.textbox();
this.forms.signIn.password.textbox();

基本上我想用一行代码初始化文本框插件,就像“旧代码”初始化jQuery插件一样(使用单个选择器)。

2 个答案:

答案 0 :(得分:1)

您当前的代码只使用jQuery选择器获取DOM上的元素,旧代码也是如此。

不同之处在于新代码会更改选择器 #tb-sign-in-email #tb-input-sign-in-email #tb-sign-in-password #tb-input-sign-in-password

$('#tb-input-sign-in-email, #tb-input-sign-in-password').textbox();

答案 1 :(得分:1)

您可以尝试使用.add()方法

var textbox = this.forms.signIn ;

 (textbox.email).add(textbox.password).textbox();