如何将元素ID变量传递给jQuery加载函数

时间:2015-08-17 18:58:00

标签: javascript jquery html css

我对Jquery和HTML相当新,所以请耐心等待。我有我的index.html调用jquery-1.9.1.min.js,我想创建一个加载外部html文件的脚本。 Index.html是一个相当长的文件,因此我想拆分该部分以获得更清晰的代码并使其更容易修改。

<html class="no-js">

<main>
<section id="testLoad"></section>
</main>

<script>window.jQuery || document.write('<script src="js/vendor/jquery-1.9.1.min.js"><\/script>')</script>
<script>$("#testLoad").load("test.html #part-1"); </script>

</body>
</html>

从上面的代码中可以看出,它可以很好地加载html文件。我想做的是设置&#34;#part-1&#34;作为变量,我可以再次调用加载脚本,但从文件的另一部分调用不同的ID。

除了这个加载函数之外,我也会接受不同的方法。我只需要调用外部html文件(大约有30个不同的部分),这样它就可以显示那些部分数据。如果我这样做有没有办法创建一个头文件,以便所有这些部分都可以访问相同的样式表?

2 个答案:

答案 0 :(得分:0)

您将加载函数放在命名函数中并传入参数:

function loadStuff(divId) {
    $("#testLoad").load("test.html #" + divId + '');
}

在您的事件处理程序中,您可以调用它:

$(document).ready(function() {
    loadStuff('someId');
});

您也可以以类似的方式传递目标ID。

正如其他人所指出的那样,这不是做基本上是客户端模板的理想方式。

答案 1 :(得分:0)

您似乎希望能够将多个不同的&#34;部分&#34; html文件,为此,我建议你研究一下擅长于此的Angular。

不确定为什么要按照自己的方式加载JQuery js文件。这真的不安全。

你可以做的另一件事是创造一个&#34; iffy&#34;正如有些人所说的那样,它是一个在加载页面时自动调用的脚本。

<script>
  (function (){
    //code goes here
  }())
</script>

此代码将在加载该页面时运行。