2011-12-27 9 views
-1

にHTMLコードをループ:は、代わりに書き込みのPHP/JavaScriptの

タブ20なります 950から1000まで
<ul class="tabs"> 
     <li><a href="#tab1">1-50</a></li> 
     <li><a href="#tab2">51-100</a></li> 
     <li><a href="#tab3">101-150</a></li> 
     <li><a href="#tab4">151-200</a></li> 
     <li><a href="#tab5">201-250</a></li> 
     <li><a href="#tab6">251-300</a></li> 
     <li><a href="#tab7">300-350</a></li> 
     <li><a href="#tab8">351-400</a></li> 
     <li><a href="#tab9">401-500</a></li> 
</ul> 

- 作成するために、forループPHP/JavaScriptを使用する方法がありますよりコンパクトなコード?

+2

はい。これを行うことができない場合は、基本的なチュートリアルをお読みください。それぞれの 'li'行をループで出力し、範囲を50ずつ増やし、タブ番号を1ずつ増やします。 –

+0

かなりのテキストブックの例for(; ; ){}; ' –

答えて

4

私は、これはあなたのためにそれをやるべきだと思う:

<ul class="tabs"> 
<?php 
$end_at = 1000; 
$group_by = 50; 
for($i=0;$i<$end_at/$group_by;$i++) { 
    echo '<li><a href="#tab', $i + 1, '">', $i * $group_by + 1, '-', ($i+1) * $group_by, "</a></li>\n"; 
} 
?> 
</ul> 

Example output

1

またはこの:

<ul class="tabs"> 
    <?php for($i=1;$i<=1000;$i++): ?> 
    <?php if($i % 50 == 0): ?> 
    <li><a href="#tab<?php echo $i; ?>"><?php echo $i-49 ?>-<?php echo $i; ?></a></li> 
    <?php endif; ?> 
    <?php endfor; ?> 
</ul> 
+0

間違ったタブ番号(#tab1、#tab2の代わりに#tab50、#tab100など) – MrGlass

+0

あなたは '$ i + = 50'を行うのではなく、必要以上に数字を繰り返しています。 – jprofitt

+0

あなたはどちらもライトです。コメントのためのThx。 – radri

関連する問題