Jquery Tabs在循环中不起作用

时间:2013-08-16 08:48:44

标签: jquery for-loop jquery-tabs

这是我的代码: -script:

<script>

       $(function() {
       $( "#tabs" ).tabs();
       });
     </script>

-HTML:

for($i=0;$i<$num_panels;$i++)
    {
        $data0=pg_fetch_row($result0);

        $name=$data0[5];
        $label_name=$data0[6];
        $script_link=$data0[7];

        echo "<div id=\"tabs\" width=\"590px\">";
        echo "<ul><li>";
        echo "<a href=\"#tabs-\".$i> $name </a>";
        echo "</li>";
        echo "</ul>";

        echo "<div id=\"tabs-\".$i>
            <p>hnckbrg</p>
            </div> ";       
    }
        echo "</div>";

此代码仅生成第一个选项卡。我不知道该怎么解决。你能救我吗?

1 个答案:

答案 0 :(得分:1)

我发现生成的HTML存在问题:

echo "<a href=\"#tabs-\".$i> $name </a>";
echo "</li>";
echo "</ul>";

echo "<div id=\"tabs-\".$i>

会产生以下HTML:

<a href="tabs-"1>Name</a>
</li>
</ul>
<div id="tabs-"1>...

注意id "tabs-"[Number]"tabs-[Number]"的对比方式。//Collect all the data. $data = []; for($i=0;$i<$num_panels;$i++) { $data[]=pg_fetch_row($result0); } // Print the tab buttons echo "<div id=\"tabs\" width=\"590px\">"; echo "<ul>"; for($i=0;$i<$num_panels;$i++) { $name=$data[$i][5]; $label_name=$data[$i][6]; $script_link=$data[$i][7]; echo "<li><a href=\"#tabs-$i\"> $name </a></li>"; } //Close the tabs echo "</ul>"; //Output all the panels. for($i=0;$i<$num_panels;$i++) { echo "<div id=\"tabs-$i\"> <p>hnckbrg</p> </div> "; } //Close #tabs echo "</div>"; 。 与href相同的问题。这可能是它或至少是它的一部分。

编辑: 同时查看代码,您将多次打印选项卡的开头。 您可能希望将代码格式设置为稍有不同,例如:

{{1}}

此代码附带警告我的PHP有点生锈。