是否可以按列填充表格中的值?

时间:2013-08-07 19:10:56

标签: php javascript jquery html css

是否可以按列填充表中的值。例如

<?php
echo "<table>";
for ($j=0;$j<6;$j++)
{
echo "<tr>";
for ($i=0;$i<6;$i++)
{
echo "<td>".$j.$i."</td>";
}
echo "</tr>";
}
echo "</table>";
?>

输出变为

00  01  02  03  04  05
10  11  12  13  14  15
20  21  22  23  24  25
30  31  32  33  34  35
40  41  42  43  44  45
50  51  52  53  54  55

但我希望桌子看起来像

00  10  20  30  40  50
01  11  21  31  41  51
02  12  22  32  42  52
03  13  23  33  43  53
04  14  24  34  44  54
05  15  25  35  45  55

我通过不改变填写表格的值来满足条件。 (改变从$ j。$ i到$ i的回声。$ j带来了这种外观,但我希望以列方式填充数据)。怎么变得可能?

3 个答案:

答案 0 :(得分:0)

甚至没有详细讨论JS问题,你的PHP是完全错误的(如果你查看你的php生成的HTML,你应该能看到它):

echo '<li value"'.$i.'" id="'.$i.'" onclick=loadXmlDoc("'.$i,$variable.'")>'.$i.'</li>';<br>

应该更像这样:

echo '<li value="'.$i.'" id="'.$i.'" onclick="loadXmlDoc(\''.$i.'\',\''.$variable.\''")>'.$i.'</li><br>';

答案 1 :(得分:0)

我相信这一点:

$variable1="xyz";
for($i=1; $i<=$pages; $i++)
{   
    echo '<li value"'.$i.'" id="'.$i.'" onclick=loadXmlDoc("'.$i,$variable.'")>'.$i.'</li>';<br>
}

需要:

$variable1="xyz";
for($i=1; $i<=$pages; $i++)
{   
    echo '<li value="'.$i.'" id="'.$i.'" onclick=loadXmlDoc(\''.$i.'\',\''.$variable.'\')>'.$i.'</li>';<br>
}

答案 2 :(得分:0)

以下是你如何真正做到这一点,老派风格,完全评论解释。

 <?php
 //NOTE: This excercise would be slightly easier if you just used php's DomDocument class because you wouldn't 
 //need to waste some logic determining whether to open/close the table rows, but here it is just echoing
 //out some straight html 

//The example data
$data_set = array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z");
//at the very least, you'll need to know how many columns you want to format the data into...
$number_of_columns = 5; 
//count the data items
$number_of_data_items=count($data_set);
//determine how many rows you'll need to display the data in the given number of columns
$num_rows=ceil($number_of_data_items/$number_of_columns);
//determine exactly how many cells it will take to display the data
$num_cells=$num_rows*$number_of_columns;

//now that we have enough info to output the table...
//init some counters
$row_count=0;
$column_count=0;
//open the table element
echo "<table border='1' cellspacing='0' cellpadding='5'>";
for($i=0;$i<$num_cells;$i++){

    $column_count++; 
    $index = $row_count + ($num_rows * ($column_count-1) );
    if( $column_count==1 ){ 
        echo "<tr>";
    } 

    if(  $index < $number_of_data_items){ 
        echo  "<td>Item :".($index+1)."</td>"; //Display the number of the data item we are
        echo  "<td>".$data_set[$index]."</td>"; //Display the actual data item
        echo "<td>&nbsp;&nbsp;</td>"; //Add some extra space between columns
    }else{ 
        //write empty cells if the data set doesn't completely fill the last column
        echo "<td>&nbsp;</td>";
        echo "<td>&nbsp;</td>";    
        echo "<td>&nbsp;&nbsp;</td>";  
    } 
    if($number_of_columns == $column_count){ 
        echo "</tr>";
        $row_count++; 
        $column_count=0;
    } 
} 
//close the table element
echo "</table>";
?>