通过jquery用另一个html文件的内容更改div内容

时间:2013-03-12 19:24:27

标签: javascript jquery html

首先,我花了最近几个小时浏览相关主题的stackoverflow。他们中的许多人似乎与我所拥有的问题非常相似,甚至还有一对几乎与我完全相似。但是,对他们起作用的修复似乎对我不起作用。我认为最好发布我的代码并让其他人查看它们;我会尽量详细说明。

我正在尝试做什么: 我有一个页面设置,其中包含li的链接,当点击它时,它应该从我制作的另一个页面中提取一些html内容。更具体地说,它应该从该页面中的特定div id中提取html内容。我无法从中删除任何内容,并将其发布到我的主页div。

我的HTML部分带有导航菜单:

<ul id="nav_main">
    <li class="navLink">link here</li>
</ul>

应该动态更改的div(点击时)标记为:

<div id="main_content">
    <p></p>
</div>

我从中提取数据的另一个.html文件有一个看起来像这样的div:

<div id="one">blahbalhblahblahlbhalbhlah</div>

我遇到困难的部分是javascript代码。我尝试过使用load和get,似乎都没有工作。这是我的骨架代码:

$(document).ready(function(){
    $("#nav_main li").on("click", function() {
        // here was my first attempt:
        $("#main_content p").load("contentholder.html #one");

        // my second attempt, using get():
        $.get("contentholder.html", function(data) {
            $("#main_content p").html(data)
        });
});

我的问题是#main_content似乎没有改变。我认为问题是加载和获取尝试不起作用,它们似乎并没有按照预期的那样拉出数据。

所有这些文件都在我的本地驱动器上。任何帮助将不胜感激

2 个答案:

答案 0 :(得分:4)

$(document).ready(function(){
     // your code here
});

您错过了function(){

答案 1 :(得分:1)

除了Brad M指出的语法错误之外,请记住,大多数浏览器如果不是从服务器生成的话,就会阻止AJAX调用,所以如果你没有运行本地主机,你很可能会得到一个进行AJAX调用时出现Access-Control-Allow-Origin错误。

在此处查看更多信息:Get HTML code of a local HTML file in Javascript