2

我正在创建内容选项卡,这些选项卡根据选择框列表中的所选值显示数据。我的问题是我无法弄清楚如何设置所选项目(联赛)的值保持不变,因此所有三个选项卡都显示来自所选项目(联赛)的数据。为了更容易理解,如果用户选择了英超联赛,标签将显示该联赛的排名、结果和射手。这是我的代码: HTML:

     <!Doctype html>
     <html>
     <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     <script type="text/javascript" src=jquery.js"></script>
     <script type="text/javascript" src="script.js"></script>
     </head>
     <body>
     <ul id="nav">
     <li><a href="tab1">Standings</a></li>
     <li><a href="tab2">Results</a></li>
     <li><a href="tab3">Goalscorers</a></li>
     <li><select name="selecting" class="selecting">
     <option value="0">--Choose a league--</option>
     <?php
      $sql=mysql_query("select * from leagues ORDER BY id ASC LIMIT 6");
      while($row=mysql_fetch_array($sql))
       {
        $id=$row['id'];
       $data=$row['name'];
       echo '<option value="'.$id.'">'.$data.'</option>'; } ?>
      </select></li>
      </ul>
      <div id="content"> </div>

jQuery (script.js)

   $(document).ready(function(){
   $(".selecting").change(function()
   {
   var id=$(this).val();
   var dataString = 'id='+ id;

   $.ajax ({
   type: "POST",
   url: "tab1.php",
   data: dataString,
   dataType: "html",
   cache: false,
   success: function(data)
   {
   $("#content").html(data).show();
   } 
   });
   $.ajax({
   type: "POST",
   url: "tab2.php",
   data: dataString,
   dataType: "html",
   cache: false,
   success: function(data)
   {
   $("#content").html(data).show();
   } 
   });

   $.ajax({
   type: "POST",
   url: "tab3.php",
   data: dataString,
   dataType: "html",
   cache: false,
   success: function(data)
   {
   $("#content").html(data).show();
   } 
   });
   });


    $('#content').load('tab1.php');
$(' ul#nav li a ').click(function() {
var page = $(this).attr('href');
$('#content').load(page + '.php');
return false;

});
    });

这是一个tab文件,三个都是一样的,只是sql查询不同。tab2.php

@$id=$_POST['id'];
if(!empty($id))
{
$mysql = mysql_query(" SELECT * from results WHERE leagueid = '$id' ORDER BY matchday asc LIMIT 10 ");
$matchday = "";
while ($row = mysql_fetch_array($mysql)) {
if($matchday != $row['matchday']) {
$matcday = $row['matchday'];
echo 'Matchday: '.$row['matchday'].'<br>';
}
    echo ''.$row['hteam'].'  '.$row['hgoals'].' : '.$row['agoals'].'  '.$row['ateam'].'<br>';
}`

我提前感谢您的帮助。此致。

4

1 回答 1

0

嘿,如果您编写了相同的代码,请编辑您的代码,然后请再次 ping,因为这里写的代码充满了如下所述的错误

  1. 你还没有初始化 jquery( $(document).ready(function(){});)
  2. 您在提取结果的页面上有一个 php 语法错误
  3. 您编写了一个非常糟糕的脚本。
于 2013-02-23T16:47:57.033 回答