[英]Displaying four li's per ul's not returning result as required
I want to display <ul>
and <li>
dynamically like 我想动态显示
<ul>
和<li>
<ul>
<li></li>
</li></li>
<li></li>
<li></li>
</ul>
<ul>
<li></li>
</li></li>
<li></li>
<li></li>
</ul>
ie, each <ul>
with 4 <li>
s. 即,每个
<ul>
具有4个<li>
。
I want to display these dynamically. 我想动态显示这些。 I tried with the following code:
我尝试使用以下代码:
$i=0;
foreach($query->result() as $inboxresult)
{
if($inboxquery->num_rows()>0)
{
if($i%4==0)
{
echo '<ul class="msgdisplayul item">';
}
$parentid=$inboxresult->id;
echo '<li class="msgdisplayli">
<div class="msgfullarea">
<div class="displyusrimge">
<input type="hidden" id="status'.$inboxresult->id.'">
<a href="">';
echo '<img src="'.base_url().'images/friend_avatar_default.jpg" alt="Default User Avatar" />';
echo '</a>
</div>
</div>
<div class="clear"></div>
</li>';
if($i%4==0 && $i!=0)
{
echo '</ul>';
}
}
$i++;
}
This is returning result as shown below: 返回结果如下所示:
<ul class="msgdisplayul item">
<li class="msgdisplayli">
<div class="msgfullarea">
<div class="displyusrimge">
<input type="hidden" id="status10">
<a href=""><img src="http://localhost:8080/workspace/project/images/friend_avatar_default.jpg" alt=" Default User Avatar"></a>
</div>
</div>
<div class="clear"></div>
</li>
<li class="msgdisplayli">
<div class="msgfullarea">
<div class="displyusrimge">
<input type="hidden" id="status7">
<a href=""><img src="http://localhost:8080/workspace/project/images/friend_avatar_default.jpg" alt=" Default User Avatar"></a>
</div>
</div>
<div class="clear"></div>
</li>
<ul class="msgdisplayul item"><li class="msgdisplayli">
<div class="msgfullarea">
<div class="displyusrimge">
<input type="hidden" id="status1">
<a href=""><img src="http://localhost:8080/workspace/project/images/friend_avatar_default.jpg" alt="Default User Avatar"></a>
</div>
</div>
<div class="clear"></div>
</li>
</ul>
</ul>
Can anybody help me to solve this? 有人可以帮我解决这个问题吗? Thanks in advance.
提前致谢。
You're incrementing $i when you shouldn't... When you don't print li elements, you should not increment $i: 在不应该增加$ i的情况下...当不打印li元素时,不应增加$ i的内容:
$i = 0;
foreach ($query->result() as $inboxresult)
{
if ($inboxquery->num_rows()>0)
{
if ($i % 4 == 0)
{
echo '<ul class="msgdisplayul item">';
}
$parentid = $inboxresult->id;
echo '<li class="msgdisplayli">
<div class="msgfullarea">
<div class="displyusrimge">
<input type="hidden" id="status'.$inboxresult->id.'">
<a href="">';
echo '<img src="'.base_url().'images/friend_avatar_default.jpg" alt="Default User Avatar" />';
echo '</a>
</div>
</div>
<div class="clear"></div>
</li>';
// if you increment $i here, you don't need to worry if $i = 0 to close the ul
$i++;
if ($i % 4 == 0)
{
echo '</ul>';
}
}
}
Oh, and mixing logic with HTML output, very bad idea ;-) 哦,将逻辑与HTML输出混合在一起,这是一个很糟糕的主意;-)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.