Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何停止JQuery.load';编辑内部脚本_Javascript_Php_Jquery - Fatal编程技术网

Javascript 如何停止JQuery.load';编辑内部脚本

Javascript 如何停止JQuery.load';编辑内部脚本,javascript,php,jquery,Javascript,Php,Jquery,我正在开发一个带有嵌套页面的动态网页。内部页面有自己的脚本,可以是活动的和模块化的 当我想删除其中一个内页时,问题就出现了。事实上,HTML代码已删除,但内部脚本仍在运行 可以停止脚本吗 以下是我的解决方案的简要视图: 请注意,在这个示例中,ID都是相同的,但在实际解决方案中,它们是使用php GET[“ID”]值通过唯一ID标识的 outerPage.php <HEAD> <script> var fRunUpdate = true; $

我正在开发一个带有嵌套页面的动态网页。内部页面有自己的脚本,可以是活动的和模块化的

当我想删除其中一个内页时,问题就出现了。事实上,HTML代码已删除,但内部脚本仍在运行

可以停止脚本吗

以下是我的解决方案的简要视图:

请注意,在这个示例中,ID都是相同的,但在实际解决方案中,它们是使用php GET[“ID”]值通过唯一ID标识的

outerPage.php

<HEAD>
    <script>
    var fRunUpdate = true;
        $(document).ready(function() {

           $("#inner1").load("inner.php");
           $("#inner2").load("inner.php");
           $("#inner3").load("inner.php");

        }
    </script>
</HEAD>
<BODY>
    <div id="inner1"></div>
    <div id="inner2"></div>
    <div id="inner3"></div>
</BODY>
<HEAD>
    <script>
    var fRunUpdate = true;
        $(document).ready(function() {
           function update(){
               //do something
               $("#contentToUpdate").html("content");
               setTimeout(update,1000);
           }
        }
    </script>
</HEAD>
<BODY>
    <div id="contentToUpdate"></div>
</BODY>

var fRunUpdate=true;
$(文档).ready(函数(){
$(“#inner1”).load(“inner.php”);
$(“#inner2”).load(“inner.php”);
$(“#inner3”).load(“inner.php”);
}
innerPage.php

<HEAD>
    <script>
    var fRunUpdate = true;
        $(document).ready(function() {

           $("#inner1").load("inner.php");
           $("#inner2").load("inner.php");
           $("#inner3").load("inner.php");

        }
    </script>
</HEAD>
<BODY>
    <div id="inner1"></div>
    <div id="inner2"></div>
    <div id="inner3"></div>
</BODY>
<HEAD>
    <script>
    var fRunUpdate = true;
        $(document).ready(function() {
           function update(){
               //do something
               $("#contentToUpdate").html("content");
               setTimeout(update,1000);
           }
        }
    </script>
</HEAD>
<BODY>
    <div id="contentToUpdate"></div>
</BODY>

var fRunUpdate=true;
$(文档).ready(函数(){
函数更新(){
//做点什么
$(“#contentToUpdate”).html(“content”);
设置超时(更新,1000);
}
}

您必须使用停止超时清除间隔 我只是读出了这个链接,并得到了它

取变量中的函数

foo = setTimeout(function, time);
然后把它清理掉

clearTimeout(foo);

我希望这将帮助您

删除内部页面的代码在哪里?是的,但由于foo是在内部作用域中声明的,我如何在外部页面访问此变量?您可以在JavaScription中使用全局变量这是一个好主意,但不幸的是不适用于我的情况。我有很多内部页面,因此我将有很多全局变量和代码会很混乱…所以你需要自定义,对吗?你必须进行序列化,不能一次隐藏5个文本框,非常感谢你的帮助:)