单击链接时如何将整页加载到div中?

时间:2013-08-25 08:59:17

标签: javascript jquery html

请帮助,真的很感激。

我已阅读this question,我认为我理解答案

问题是,我希望在点击链接时将其他页面注入“main”div。例如,当我点击2011时,我希望将页面2011.html注入“main”div。

    <div id="cssmenu" class="sixteen columns">
        <ul>
           <li><a href='#'><span>2011</span></a></li>
           <li><a href='#'><span>2012</span></a></li>
           <li><a href='#'><span>2013</span></a></li>
           <li><a href='#'><span>Edições Especiais</span></a></li>
           <li><a href='#'><span>Estat&iacute;sticas</span></a></li>
        </ul>
    </div>

    <div id="separator" class="sixteen columns">
    </div>
    <div class="sixteen columns" id="main" style="margin-top: 15px; margin-bottom: 15px">

    </div>

我该怎么做?

提前致谢!

2 个答案:

答案 0 :(得分:5)

试试这个:

$('li a').click(function (e) {
    e.preventDefault();
    var name = $(this).find('span').text();
    $("#main").load(name + ".html");
});

演示here

这是2011 - 2013页面的一个想法,但名称不适用的页面。您需要为a元素或data- attr提供ID。最好的方法是使用链接href!

如果您使用ID,可以使用:

$('li a').click(function (e) {
    e.preventDefault();
    var name = this.id;
    $("#main").load(name + ".html");
});

并演示here

最佳选择

<a>元素指定正确的href,以便搜索引擎正确编制索引。喜欢:<a href='2011.html'>。然后使用它:

$('li a').click(function (e) {
    e.preventDefault();
    $("#main").load(this.href);
});

答案 1 :(得分:0)

我知道两个选项:

  1. 使用ajax(异步JavaScript和XML)
    您可以在此处了解到:http://www.w3schools.com/ajax/

  2. prepend / append iframe