ON LOAD功能

时间:2014-01-03 19:11:18

标签: javascript jquery html

拜托,这是这个剧本:

<script type="text/javascript">
$(document).ready(function() {
    $('#content').load('divelencoarticoli.html');
});
</script>

在页面master.html中加载一个名为develencoarticoli.html的子页面,该页面位于此div:

<div style="width: 100%" id="content">Initial content in test.html</div>

我的问题是:可能有一个脚本在DIV #content中加载div中指示的页面?我不想从脚本调用页面,但脚本知道div包含的页面#content。 我的目标是在我网站的所有页面中使用通用脚本,我可以在DIV内容中调用不同的页面加载。

对不起我的英语和我的问题,但我不是开发人员。

提前致谢。


决定,感谢ken.dunnington和epascarello。

4 个答案:

答案 0 :(得分:1)

您要使用的是包含您要加载的网址的数据属性

<div style="width: 100%" id="content" data-load-url="divelencoarticoli.html">Initial content in test.html</div>

比你的JavaScript可以只是:

$(function() {
    var elem = $("[data-load-url]");
    var url = elem.data("load-url");
    elem.load(url);
});

答案 1 :(得分:0)

如果我理解正确,您希望能够将外部内容加载到#content div中,而无需在Javascript中明确说出要使用哪个URL,并且能够在多个页面上使用相同的代码。如果是这样,我建议使用data-*变量,如下所示:

<div style="width: 100%" id="content" data-content-url="divelencoarticoli.html">Initial content in test.html</div>
<script type="text/javascript">
    $(function() {
        var contentDiv = $("#content");
        var url = contentDiv.data("content-url");
        contentDiv.load(url);
    });
</script>

jQuery会在第一次访问元素时自动将data-*属性转换为可通过.data()方法访问的值。因此,您可以在每个页面上包含上面的脚本块,只需根据需要更改#content div中的data-url。

答案 2 :(得分:0)

    According to my understanding u want to include the page dynamically by pasing the URL so you do this in this mannner :

<script type="text/javascript">
    function do_the_click(url)
        {
        alert(brl);
        var request  =   $.ajax({
                                 async: false,
                                 url: url, 
                                 contentType: "text/html",
                                 type : "GET",
                                 dataType : "html",                

                    });


                        request.done(function( msg ) {
                          document.getElementById('pass here the ID of div in which the page is included').innerHTML = msg;
                        });

                        request.fail(function( jqXHR, textStatus ) {
                          alert( "Request failed: " + textStatus );
                        });

        }
    </script>

and the HTML boby code should be 
<div id="tagmenu">

            <a href="#" class="button" id="activity" onclick="do_the_click('category/ABB.html');"/>ABB</a>
            <a href="#" class="button" id="javacollections" onclick="do_the_click('category/ABC.html');"/>ABC</a>
    </div>

答案 3 :(得分:-1)

你可以做一个ajax调用来获取html。这是一个使用jquery

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

$.get( "ajax/divelencoarticoli.html", function( data ) {
  $( "#content" ).html( data );
  alert( "Load was performed." );
});

});
</script>