2013-02-12 66 views
-2

我有一個for循環的錶行和表數據。我只想要在每個表數據上添加類名,但它們當然不會是相同的類名。循環內的函數

但問題是功能的輸出是擺在桌子外面。我已經檢查了行情或其他東西,但仍然放在外面。任何人都可以向我解釋爲什麼?

function alphaCount(){ 
    for ($i=65; $i<=90; $i++) { 
    echo char($i); 
    } 
    for($i=1;$i<=10;$i++) { 
    echo '<td class="char-'.$i.'-'.$this->alphaCount.'"> </td>'; 
    } 
+0

什麼表?我看不到一個 – seferov 2013-02-12 09:47:18

+7

這就是錯字... – 2013-02-12 09:47:42

+0

@Ferhad它在問題的文本中。他必須很難格式化代碼。 – Antony 2013-02-12 09:49:40

回答

0

說實話,我並沒有得到多少你的代碼,但根據你所描述的問題,我想這個問題是以下。

您有產生一些標識的功能,但它相呼應,它沒有返回它的,就像這樣:

function getId() { 
    // something 
    echo $id; 
} 

而且當你正在生成的條目,您有以下代碼:

echo "<tr class='" . getId() . "'>...</tr>"; 

就像getId()方法在呈現<tr>標記之前回顯標識符一樣。您可以通過在getId改變回聲語句return語句要麼解決它,或者你可以在以下方式重寫條目生成:

echo "<tr class='" 
getId(); 
echo "'>...</tr>"; 

我希望這是你有什麼問題。

0

如果你看一下生成的HTML源(從瀏覽器「查看源文件」),你會看到,它是無效的:

abcdefg... 
<td class="char-1-?"> </td> 
<td class="char-2-?"> </td> 
... 

您在第一回路輸出爲任何表單元格以外什麼。瀏覽器會處理它,就好像它完全在桌子外面一樣。

編輯:它也可能是你擰問題中的括號,你的真實代碼做了完全不同的事情。很難從原始格式中分辨出來。