2012-11-28 4 views
0

J'essaie de faire quelque chose, mais je ne peux pas. J'ai une table où les résultats sont comme ceci:Comment commander les résultats dans le tableau

+----------+ 
|Dressing 1| 
+----------+ 
|Dressing 2| 
+----------+ 
|Dressing 3| 
+----------+ 
|Dressing 4| 
+----------+ 
|Dressing 5| 
+----------+ 
|Dressing 6| 
+----------+ 
|Dressing 7| 
+----------+ 
|Dressing 8| 
+----------+ 
|Dressing 9| 
+----------+ 

Mais je veux qu'il affiche comme ceci:

+----------+----------+----------+ 
|Dressing 1|Dressing 2|Dressing 3| 
+----------+----------+----------+ 
|Dressing 4|Dressing 5|Dressing 6| 
+----------+----------+----------+ 
|Dressing 7|Dressing 8|Dressing 9| 
+----------+----------+----------+ 

En ce moment, j'ai un code comme ceci:

<table cellpadding="6" border=0> 

<tr style="height:20px"> 

{foreach from=$group.attributes name=awp_loop item=group_attribute} 

{strip} 

{assign var='id_attribute' value=$group_attribute.0} 

<td align="center" {if $group.group_layout}valign="top"{/if}> 
<div id="awp_checkbox_cell{$id_attribute}" style="{if !$group.group_layout}float:left;{else}width:100%;clear:left;{/if}"> 

{if $group.group_per_row > 1}<center>{/if} 

<input style="border:none;margin:0;padding:0" type="checkbox" {if $group.attributes_quantity.$id_attribute == 0 && $awp_out_of_stock == 'disable'}disabled="disabled"{/if} class="awp_attribute_selected awp_group_class_{$group.id_group}" name="awp_group_{$group.id_group}" id="awp_checkbox_group_{$id_attribute}" onclick="awp_select('{$group.id_group|intval}',{$group_attribute.0|intval}, {$awp_currency.id_currency},false);" value="{$group_attribute.0|intval}" {if $group.default|is_array && $id_attribute|in_array:$group.default}checked{/if} />&nbsp; 

{if $group.group_per_row > 1}</center>{/if} 

</div> 
</td> 

{if $smarty.foreach.awp_loop.iteration < $group.attributes|@count && $smarty.foreach.awp_loop.iteration % $group.group_per_row == 0} 

</tr> 

<tr style="height:20px;"> 

{/if} 

{/strip} 

{/foreach} 

</tr> 

</table> 

Mais je n'arrive pas à comprendre comment faire de la table ou du code pour ne faire que 3 entrées d'affilée. Si quelqu'un pouvait aider, ce serait génial.

+0

Vous vérifiez si le mod 3 est 0 pour commencer une nouvelle ligne? Qu'est-ce que votre code produit actuellement? – user17753

Répondre

2

J'utiliserais une liste et ferais flotter chaque li élément restant. Cela vous donnerait le résultat désiré et ce serait beaucoup plus propre.

http://jsfiddle.net/Zppya/

Comme pour la méthode de la table ... ajouter un compteur et d'utiliser la fonction mod/reste à déterminer chaque troisième élément de sorte que vous pouvez créer une nouvelle ligne.

+0

Je préférerais avoir seulement 3 entrées dans une rangée. – Ismail

+1

Est-ce que ma solution ne fait pas ça? – twodayslate

Questions connexes