0

我有以下 html 标记。我想通过 jquery 将此标记添加到母版页(或任何其他 html 页面)。我不想在那个 html 页面的正文中包含这个 html,因为我不想触摸我的母版页。我只想在母版页中添加一个 div,并希望将以下标记附加到该 div。我想通过 jquery 附加这个 html。怎么做?

    <div id="mymenuDiv">
    <ul id="nav">
        <li class="top"><a href="#nogo1" class="top_link"><span>Home</span></a></li>
        <li class="top"><a href="#nogo2" id="products" class="top_link"><span class="down">Products</span></a>
            <ul class="sub">
                <li><a href="#nogo3" class="fly">Cameras</a>
                        <ul>
                            <li><a href="#nogo4">Nikon</a></li>
                            <li><a href="#nogo5">Minolta</a></li>
                            <li><a href="#nogo6">Pentax</a></li>
                        </ul>
                </li>
                <li class="mid"><a href="#nogo7" class="fly">Lenses</a>
                        <ul>
                            <li><a href="#nogo8">Wide Angle</a></li>
                            <li><a href="#nogo9">Standard</a></li>
                            <li><a href="#nogo10">Telephoto</a></li>
                            <li><a href="#nogo11" class="fly">Zoom</a>
                            </li>
                            <li><a href="#nogo15">Mirror</a></li>
                        </ul>
                </li>
                <li><a href="#nogo19">Flash Guns</a></li>
                <li><a href="#nogo20">Tripods</a></li>
                <li><a href="#nogo21">Filters</a></li>
            </ul>
        </li>
    </ul>
    </div>
4

4 回答 4

2
$('body').append("<div id=\"mymenuDiv\">\r\n    <ul id=\"nav\">\r\n        <li class=\"top\"><a href=\"#nogo1\" class=\"top_link\"><span>Home<\/span><\/a><\/li>\r\n        <li class=\"top\"><a href=\"#nogo2\" id=\"products\" class=\"top_link\"><span class=\"down\">Products<\/span><\/a>\r\n            <ul class=\"sub\">\r\n                <li><a href=\"#nogo3\" class=\"fly\">Cameras<\/a>\r\n                        <ul>\r\n                            <li><a href=\"#nogo4\">Nikon<\/a><\/li>\r\n                            <li><a href=\"#nogo5\">Minolta<\/a><\/li>\r\n                            <li><a href=\"#nogo6\">Pentax<\/a><\/li>\r\n                        <\/ul>\r\n                <\/li>\r\n                <li class=\"mid\"><a href=\"#nogo7\" class=\"fly\">Lenses<\/a>\r\n                        <ul>\r\n                            <li><a href=\"#nogo8\">Wide Angle<\/a><\/li>\r\n                            <li><a href=\"#nogo9\">Standard<\/a><\/li>\r\n                            <li><a href=\"#nogo10\">Telephoto<\/a><\/li>\r\n                            <li><a href=\"#nogo11\" class=\"fly\">Zoom<\/a>\r\n                            <\/li>\r\n                            <li><a href=\"#nogo15\">Mirror<\/a><\/li>\r\n                        <\/ul>\r\n                <\/li>\r\n                <li><a href=\"#nogo19\">Flash Guns<\/a><\/li>\r\n                <li><a href=\"#nogo20\">Tripods<\/a><\/li>\r\n                <li><a href=\"#nogo21\">Filters<\/a><\/li>\r\n            <\/ul>\r\n        <\/li>\r\n    <\/ul>\r\n    <\/div>")

更好的是,将其粘贴在 HTML 文件中并执行以下操作:

$('body').load('myhtml.html');
于 2012-11-21T05:44:16.167 回答
0

尝试这样的事情

 $(function() {
   $(#master page div id).append($(#id of div from which you have to append));
 });
于 2012-11-21T05:46:18.550 回答
0

最简单的方法:

$('#myMenuDiv').html('<ul id="nav"><li class="top"><a href="#nogo1" class="top_link"><span>Home</span></a></li><li class="top"><a href="#nogo2" id="products" class="top_link"><span class="down">Products</span></a><ul class="sub"><li><a href="#nogo3" class="fly">Cameras</a><ul><li><a href="#nogo4">Nikon</a></li><li><a href="#nogo5">Minolta</a></li><li><a href="#nogo6">Pentax</a></li></ul></li><li class="mid"><a href="#nogo7" class="fly">Lenses</a><ul><li><a href="#nogo8">Wide Angle</a></li><li><a href="#nogo9">Standard</a></li><li><a href="#nogo10">Telephoto</a></li><li><a href="#nogo11" class="fly">Zoom</a></li><li><a href="#nogo15">Mirror</a></li></ul></li><li><a href="#nogo19">Flash Guns</a></li><li><a href="#nogo20">Tripods</a></li><li><a href="#nogo21">Filters</a></li></ul></li></ul>');

它很丑。

于 2012-11-21T05:44:33.577 回答
0

$.ajax()您可以为此使用 jQuery ,如下所示:

$.ajax({
    url: 'ajax/test.html',
    success: function(data) {
      $('#mydiv').html(data);
    }
});

为了使这更简单,有$(selector).load()这样的:

$('#mydiv').load('ajax/test.html')

id您可以通过从 ajax 页面中指定div标记来更进一步。如果 ajax 页面是一个完整的 html 页面并且您不想在调用页面的正文中注入html, head, et al 标记,这将有所帮助。你可以这样做:

$('#mydiv').load('ajax/test.html #div_tag_to_load')
于 2012-11-21T07:08:01.127 回答