我对这段代码有疑问:
jQuery( "#unknown_dialog" ).dialog({
autoOpen: false,
resizable: true,
height:150,
width:500,
modal: true,
closeOnEscape: false,
open: function(event, ui) {
jQuery(".ui-dialog-titlebar").hide();
jQuery(".ui-dialog-buttonpane").addClass("dialogButtonPane");
jQuery(".ui-dialog-buttonset").addClass("dialogButtonSet");
jQuery(".ui-button").addClass("dialogButton");
}
});
我尝试将 open 函数作为在多个地方使用它的不同方法,例如:
jQuery( "#unknown_dialog" ).dialog({
....,
open: dialogOpenMethod(event, ui)
});
var dialogOpenMethod = function(event, ui) {
jQuery(".ui-dialog-titlebar").hide();
jQuery(".ui-dialog-buttonpane").addClass("dialogButtonPane");
jQuery(".ui-dialog-buttonset").addClass("dialogButtonSet");
jQuery(".ui-button").addClass("dialogButton");
};
但是我在dialogOpenMethod(event, ui)中遇到了javascript错误:未找到参数ui。 谁能帮我吗?
最佳答案
这段代码:
jQuery( "#unknown_dialog" ).dialog({
....,
open: dialogOpenMethod(event, ui)
// calls the function ^^^^^^^^^^^
});
...是调用 dialogOpenMethod
函数,然后将其返回值分配给 open
属性,与a 完全相同= foo()
调用 foo
并将其返回值分配给 a
。
相反,只需引用该函数即可:
jQuery( "#unknown_dialog" ).dialog({
....,
open: dialogOpenMethod
});
关于javascript - JSON 中的 Jquery 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28363170/