0

我在 Razor 视图引擎的 asp.net MVC3 中使用 jquery。我有 jquery 选项卡控件,在选项卡导航上我加载了 myusercontrol.cshtml 页面。在 myusercontrol.cshtml 页面上,我有

 $(document).ready(function (){ loadjqgrid();});. 

单击每个选项卡时,我都会这样做

 $("#fragment-1").load("MyAction_in_controller"); 

这仅在我单击选项卡时第一次调用,第二次单击时控制不会传递给控制器​​。相反,什么也没有发生。请指教。

提前非常感谢。

4

2 回答 2

3

$(document).ready仅触发DOMContentLoaded只能发生一次的事件。加载新内容不会触发该事件。

相反,将其背后的代码抽象为一个函数并调用该函数。

function domready () {
    // do stuff
}

$(document).ready(domready);

$("#fragment-1").load("MyAction_in_controller",domready);

但是,很可能有更好的方法来处理它,例如委托事件。

于 2012-06-26T14:15:36.020 回答
0

如果我对您的理解正确,您想loadjqgrid在加载事件后每次单击选项卡时运行?如果是这样,您可以这样做:

$("#fragment-1").load("MyAction_in_controller",loadjqgrid);

于 2012-06-26T14:43:05.287 回答