我试图了解如何从函数的 jQuery 调用中将值返回到属性。
我有一个可以正常工作的解决方案,但我想了解为什么我认为应该有效的方法无效。
我有一个带有 jQuery 手风琴的 ASP.NET 页面。我希望手风琴根据文件隐藏代码通过页面上的隐藏值提供的值打开到特定索引。
在我的测试中,我得到了这个例子:
var index = $("#Content_Intro_hidAccordionIndex").val();
if (index == null) index = 0;
else index = parseInt(index);
$(".accordion").accordion({
collapsible: true,
active: index,
event: "click hoverintent",
heightStyle: "content"
});
但是,这样做似乎不起作用:
$(".accordion").accordion({
collapsible: true,
active: function() {
var ret = $("#Content_Intro_hidAccordionIndex").val();
if (ret == null) ret = 0;
else ret = parseInt(ret);
return ret;
},
event: "click hoverintent",
heightStyle: "content"
});
那么为什么第二种方式不起作用呢?
active
期望是一个整数,而不是一个函数。这不是回调,它只是哪个选项卡应该处于活动状态的值。
您可以使用函数,但需要立即调用该函数并产生整数值。像这样的东西:
$(".accordion").accordion({
collapsible: true,
active: (function() {
var ret = $("#Content_Intro_hidAccordionIndex").val();
if (ret == null) ret = 0;
else ret = parseInt(ret);
return ret;
})(),
event: "click hoverintent",
heightStyle: "content"
});
只要整个操作产生一个整数值,它就可以是您想要的任何内联操作。但它必须被调用并产生该值。手风琴工具本身不期望只是一个函数,也不会尝试执行该函数。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句