如何使用对象正确设置插件的选项

时间:2014-07-10 14:31:03

标签: javascript jquery json

我几乎羞于问......但似乎无法想出这一个......

通常情况就这样......

instance_name = $("#select-field").magicSuggest({
        valueField: 'id',
        displayField: 'title',            
        maxSelection: 1
    });

我想这样做..所以我可以用它来制作一个功能......

options ={ 
           valueField: 'id',
           displayField: 'title',            
           maxSelection: 1
         };

instance_name = $("#select-field").magicSuggest(options);

我试过这个并且没有错误,但它不起作用..

摆弄:http://jsfiddle.net/B6Gtm/6/

1 个答案:

答案 0 :(得分:1)

您已将初始化置于已重新定义变量options的函数中,因此它的作用域为该函数,但您没有传入选项

options = {    
    data: ['Paris', 'New York', 'Japan'],
    valueField: 'id',
    displayField: 'name',
    hideTrigger: true,
    maxSelection: 1
};
function doMe(options){

    var instance_name2 = $("#select-field2").magicSuggest(options);
}
doMe();

所以你的两个例子绝不相同,如果他们那么它会工作正常。通过使2相同来证明:http://jsfiddle.net/B6Gtm/7/

这样可行:

options = {    
    data: ['Paris', 'New York', 'Japan'],
    valueField: 'id',
    displayField: 'name',
    hideTrigger: true,
    maxSelection: 1
};
var instance_name2 = $("#select-field2").magicSuggest(options);

一样
options = {    
    data: ['Paris', 'New York', 'Japan'],
    valueField: 'id',
    displayField: 'name',
    hideTrigger: true,
    maxSelection: 1
};
function doMe(options){

    var instance_name2 = $("#select-field2").magicSuggest(options);
}
doMe(options);