Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jquery重新加载div内容_Javascript_Jquery_Html_Ajax - Fatal编程技术网

Javascript 使用jquery重新加载div内容

Javascript 使用jquery重新加载div内容,javascript,jquery,html,ajax,Javascript,Jquery,Html,Ajax,我有一个网站,我在一行中显示两个表,一对二。在表格上方,我有一个菜单,用户可以在其中选择显示的表格。 问题是当我使用jquery函数div.remove时;div.append;div.load未发生任何情况-不显示新表 HTML代码: <div id="container_menu"> <div id="menu1"> <ul id="mainmenu"> <li><a href="#">Choose

我有一个网站,我在一行中显示两个表,一对二。在表格上方,我有一个菜单,用户可以在其中选择显示的表格。 问题是当我使用jquery函数div.remove时;div.append;div.load未发生任何情况-不显示新表

HTML代码:

    <div id="container_menu">
    <div id="menu1">
    <ul id="mainmenu">
    <li><a href="#">Choose the first map <i class="arrow"></i></a>
        <ul>
            <li class="div1clear" data-path="tables/cycling1_table.html"><a href="#">% of employees cycling to work</a></li>    
            <li class="div1clear" data-path="tables/white_british1_table.html"><a href="#">% of White British residents</a></li>
        </ul>
    </li>
</ul>
</div>  
    <div id="menu2">
    <ul id="mainmenu">
    <li><a href="#">Choose the second map <i class="arrow"></i></a>
        <ul>
            <li class="div2clear" data-path="contents/work/cycling2.html"  data-path2="tables/cycling2_table.html"<><a href="#">% of employees cycling to work</a></li>                 
            <li class="div2clear" data-path="contents/ethnic/white_british2.html" data-path2="tables/white_british1_table.html"><a href="#">% of White British residents</a></li>
        </ul>
    </li>
</ul>
</div>
</div>

    <div id="container_table">          
        <div id="table_div1"></div>
        <div id="table_div2"></div> 
    </div> 


    • 您确实加载了JQuery吗?请确保有以下内容:

      
      

      在所有其他JavaScript代码之前,首先加载它

      我刚刚运行了您的代码,并且能够删除其中一个表。另外,一定要定义“list”变量。我以为你刚刚把它从你的帖子里漏掉了,但是在你的代码里有它

      然而,就交换而言,我认为您的tablePath返回未定义

       var tablePath = $(this).data("path2");                  
      
      上一行中此
的定义为:

<li class="div1clear" data-path="tables/cycling1_table.html">
  <a href="#">% of employees cycling to work</a>
</li>

  • 其中没有定义“路径2”。如果单击顶部的两行或底部的两行,那么使用一个变量定义数据加载的位置可能是有意义的

    为什么不直接使用制表符呢?尝试:替换
    $(“#table_div2”)。删除()$(“#容器#u表”)。追加(“”)$(“#table_div2”).load(tablePath2)与<代码>$(“#表_div2”).empty()
    $('#table_div2')。加载(tablePath2)选项卡?你能再多说一点吗?我是js和jqueryNewToJS的初学者-我已经尝试过你的建议,不幸的是效果是一样的:(你在控制台中有任何错误显示吗?
    
    <script type="text/javascript">
                var table2;
                var newList2 = [];
    
        $.each(list, function(index, val) {
            table2 = {
               name: val.NAME,
               value: val.cycling
            };
            newList2.push(table2);
        }); 
    
        var createdTable2;
        $.each(newList2, function(index, val) {
            createdTable2 += '<tr><td>' + val.name + '</td>';
            createdTable2 += '<td>' + val.value + '</td></tr>';  
            $('#table_div2').html( createdTable2);
        </script>
    
     var tablePath = $(this).data("path2");                  
    
    <li class="div1clear" data-path="tables/cycling1_table.html">
      <a href="#">% of employees cycling to work</a>
    </li>