我想调用一个回调方法,该方法可能会或可能不会在 jQuery 选项卡作为 Ajax 内容加载的页面中实现。换句话说,我有一组 jQuery 选项卡,用于加载在 JSP 文件中呈现的内容。其中一些文件中包含额外的 Ajax 内容,有些则没有。
我能做的是:
$(document).ready(function() {
$("#menu").tabs( {
cache: false,
ajaxOptions: {cache: false},
load: function(event, ui) {
if (ui.index == index_of_tab_with_additional_content) {
//call code defined in other places and embedded using <script> tags
}
}
});
});
但这有一些缺点——所有回调必须在嵌入到我的主选项卡页面的脚本中声明,以及它们可能依赖的任何东西——不优雅!另外,我希望能够调用相同的回调,以避免逐页 if/else 语句。简而言之,我想要类似的东西
load: function(event, ui) {
callback(); //Each tab would implement this differently, or not at all
}
}
可悲的是,我无法弄清楚如何调用内容中声明的脚本函数。如其他线程中所述,jQuery 不加载 Javascript。
显然必须为此设置一个选项,但我找不到哪个选项。
如果设置了选项并加载了 JS,我将如何访问这些功能?会不会是 ui.panel.funcname(); ?
谢谢, ES