Twitter bootstrap 回发后Java脚本不工作
我正在asp.net web应用程序上使用引导组件。 它工作正常,但奇怪的是,他们在一个页面回发后停止工作。外表很好,但行为却不好。这就是为什么我认为这个问题解决了javascript文件 例如,dorp down按钮:回发后,展开操作不起作用Twitter bootstrap 回发后Java脚本不工作,twitter-bootstrap,Twitter Bootstrap,我正在asp.net web应用程序上使用引导组件。 它工作正常,但奇怪的是,他们在一个页面回发后停止工作。外表很好,但行为却不好。这就是为什么我认为这个问题解决了javascript文件 例如,dorp down按钮:回发后,展开操作不起作用 您知道这是什么原因吗?如果您使用UpdatePanel进行部分页面刷新,那么当面板的内容通过AJAX更新时,通常的$(document).ready(…)/$(…)功能不会再次启动,这意味着自定义JS功能(如下拉菜单)不会启动这是引导的一部分,不会重新绑
您知道这是什么原因吗?如果您使用UpdatePanel进行部分页面刷新,那么当面板的内容通过AJAX更新时,通常的
$(document).ready(…)/$(…)
功能不会再次启动,这意味着自定义JS功能(如下拉菜单)不会启动这是引导的一部分,不会重新绑定到新元素
我通常会将设置javascript事件处理程序和行为的代码提取到它们自己的函数中(例如,function BindEvents(){…}
),然后在更新面板中使用以下代码,以确保在部分回发之后(以及在初始页面加载时)重新运行它:
如果使用这行代码,每次更新面板更新时,endRequestHandler中的任何内容都应该触发
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(endRequestHandler);
function endRequestHandler(){
// initialize controls here...
}
将以下内容放在页面正文中解决了此问题:
$('.dropdown toggle').dropdown();
您是否检查了javascript控制台以查看是否存在任何javascript错误?那是我要找的第一个地方。嗨,丹·赫尔曼!没有错误。非常感谢你!非常感谢你!我很确定这就是正在发生的事情。正如你所说,我正在使用一个更新面板。但是,究竟是什么在函数BindEvents(){…}上设置javascripts事件处理程序的呢?您是否使用任何自定义javascript来启用下拉按钮行为,或者您只是在其上设置了“自动”工作的data toggle=“dropdown”
属性,您使用的是最新版本的jQuery和Twitter引导吗?@VijayKumbhoje确保您的引导开关初始化代码(例如,$(“.my checkbox”).bootstrapSwitch()
)位于调用BindEvents()
的函数内。@VijayKumbhoje我没有足够的详细信息来给出任何好的建议,抱歉。我建议你写一个包含所有相关细节的问题,并把我和它联系起来。
function BindEvents() {
$('[data-toggle=dropdown]').dropdown();
// other bootstrap binding code - see the combined Bootstrap.js for ideas
}
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(endRequestHandler);
function endRequestHandler(){
// initialize controls here...
}