我正在尝试将numbers
设置为与digits
相等。
我怎样才能做到这一点?我试过'numbers' : digits
,但它不起作用。
// Checks if the checkbox is checked or not
$('#digits').change(
function(){
if ($(this).is(':checked')) {
digits = true;
} else {
digits = false;
}
});
// When the button "apply" is pressed it sets numbers equal to digits and calls the function test
$(document).ready(function(){
$('#apply').test({
'numbers': digits // This is where I'm stuck
});
});
(function($){
var methods = {
init : function( options, callbacks) {
var settings = $.extend({
'numbers': true,
}, options);
...
...
...
etc
$.fn.test= function(method) {
alert("SUCCESS");
...
...
};
})(jQuery);
答案 0 :(得分:2)
初始化插件时,您会在该阶段为其赋予值digits
。从您发布的代码中,我猜它是undefined
。您需要在每次更改插件时通过复选框更新插件上的值。
快速解决方法是将初始化插件的代码移动到复选框的change
处理程序,尽管您也可以考虑初始化插件一次并实现setter方法以允许您更新值初始化后的插件。
// Checks if the checkbox is checked or not
$('#digits').change(
function(){
$('#apply').test({
'numbers': this.checked
});
});