从另一个文件调用document.ready函数

时间:2014-08-09 06:51:43

标签: javascript jquery

我有两个html文件。一个文件有一个表,该表通过写在其中的脚本不断更新。表部分位于html的主体中,一旦document.ready执行,其内容就会更新。我想从另一个文件运行document.ready文件,并在该文件中显示该表(不断更新并显示在另一个文件中)。

文件-1

<script type="text/javascript">
   $(document).ready(function () {

      $('#maindiv').load('http://somesite/index.html #tableId');


       });
 </script>
<body>
<div id="maindiv"></div>
</body>

FILE-2(index.html页面)

<script>

      $(document).ready(function(){

          $.ajaxSetup({ cache: false });
          some_function(true);
          setInterval(function(){some_function(false)},500);
      });

      //Some Global Variables Declared

var some_function= function(getAll){
//Accessing and using the above variables
}
</script>
<body>
<div id="tableId">
<table>
 ......
</table>
</div>
</body>

2 个答案:

答案 0 :(得分:1)

如果我说对了。你应该做global functions。假设你有以下情况。

归档一个

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

function doSomething() {
    //doing something
}

文件二

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



修改
如果你想从另一个页面获取html,你可以使用jQuery .load()。您必须拥有使其成为动态文件的javascript,并且导入&#34;它来。

提交一个HTML

<div class="load-table-here"></div>

提交两个html

<table class="you-want-me"></table>

你像这样加载

<强>更新

$('.load-table-here').load('path/file-two.html .you-want-me', function() {
      some_fuction(true);
      setInterval(function(){some_function(false)},500);
});

答案 1 :(得分:0)

在jQuery.load文档中,查看“脚本执行”部分:http://api.jquery.com/load/。这里要指出的重要例子是,

  

但是,在以下情况中,文档中的脚本块为   加载到#b中被删除而不执行:

$( "#b" ).load( "article.html #target" );

因此,换句话说,为您的其他文件加载的脚本永远不会被执行,并且永远无法更新您的新表。