如何修复JavaScript插件,使其仅能每隔一部分页面加载一次ajax

如何修复JavaScript插件,使其仅能每隔一部分页面加载一次ajax,javascript,c#,html,model-view-controller,Javascript,C#,Html,Model View Controller,我的问题是引导切换插件只能每隔一段时间运行一次 我正在使用引导切换为我的复选框提供更好的样式 <link href="~/Content/bootstrap-toggle.min.css" rel="stylesheet"> <script src="~/Scripts/bootstrap-toggle.min.js"></script> 在第一次加载视图时,当我单击“切换”按钮时,它将切换到另一个值。如果在不刷新页面的情况下关闭视图加载的窗口,重新打开窗口

我的问题是引导切换插件只能每隔一段时间运行一次

我正在使用引导切换为我的复选框提供更好的样式

<link href="~/Content/bootstrap-toggle.min.css" rel="stylesheet">
<script src="~/Scripts/bootstrap-toggle.min.js"></script>
在第一次加载视图时,当我单击“切换”按钮时,它将切换到另一个值。如果在不刷新页面的情况下关闭视图加载的窗口,重新打开窗口并单击切换,则不会发生任何事情


编辑:我还应该提到,如果关闭视图再次加载的窗口而不刷新页面,请重新打开窗口并单击其工作的切换。问题不在于它只在初始加载时起作用,而在于它在50%的时间内起作用。

发生这种情况是因为脚本只在网页的元素上设置一次,而在页面加载后立即设置。之后,无论何时加载新的DOM元素(例如通过AJAX重新加载局部视图时发生的情况),脚本都不会在新加载的元素中执行其设置例程

通过AJAX加载新元素后,应在新加载的元素上执行对
bootstraptogle()
(签出)的JavaScript调用,以便为新加载的元素激活引导切换插件

在页面上加载新的AJAX元素后,您应该立即调用如下内容:

// Replace by a selector which selects the elements which have been created
$('#myNewLoadedCheckboxElement').bootstrapToggle();

因为引导程序不知道您已经刷新了页面,所以您需要告诉它重新初始化。对不起,您可以在此基础上展开吗?我不太清楚你的意思。当你调用ajax并用你的部分视图重新加载div时,你需要重新初始化你的复选框,让引导程序知道有新元素。就是这样!我添加了$('#Active')。bootstrapToggle();到Ajax调用的成功,现在它每次都能工作。谢谢
// Replace by a selector which selects the elements which have been created
$('#myNewLoadedCheckboxElement').bootstrapToggle();