我有一个奇怪的错误,当我在其中生成LI标签时,我的UL标签消失了,我不知道它可能是什么,所以如果有人在这里可以帮助我那将是伟大的。
它生成的HTML:
<div class="col-md-12 col-xs-12">
<div id="tickets">
<ul>'.$Ticket->generateTickets().'</ul>
</div>
</div>
我的PHP功能
public function generateTickets(){
$cols = Array ('ID','description','ticket_id');
$items = $this->db->orderBy('ID')->get("tickets", null, $cols);
if ($this->db->count > 0){
foreach ($items as $item) {
echo '<li><a href="?p=support&action=readticket&tid='.$item['ID'].'">Ticket #'.$item['ticket_id'].'<br/></a>
<p>'.substr($item['description'],0,20).'..</p>
</li>';
}
}
}
控制台显示ul刚刚消失: http://piclair.com/r45q7
答案 0 :(得分:4)
在您的generateTickets函数中,您会立即回显。由于html文件中的串联是在函数完成后完成的,因此它们首先得到输出。你应该返回值(用echo
替换return
并将其移出循环)或在html中,不要连接字符串。
$result = '';
foreach ( $items as $item ) {
$result .= '<li ...';
}
return $result;