我从我的数据库中检索评论。如果用户点击“devam”链接,我希望他/她可以看到完整的评论。
为了做到这一点,我写了下面的代码。我使用template_lite
,如果注释的字符数大于95,则会截断。使用下面的代码,当我单击“devam”链接时,它会显示更长的注释,但只显示第一个。为什么?怎么了?
foreach value=users from=$comment}
<tr>
<td>{$users.ADD_DATE}</td>
<td>{$users.NAME}</td>
{if $users.COMMENT|count_characters > 95}
<td><span id="comment12kisa">{$users.COMMENT|truncate:95:"..."}
</span><a href="" onclick="$('#comment12kisa').html($('#comment12uzun').html());return false;">devami</a></td>
{else}
<td><span id="comment12uzun">{$users.COMMENT}</span></td>
{/if}
<td><center><input type="checkbox" name="checkComment[]" value={$users.ID} /></center></td>
</tr>
需要唯一ID,
出了什么问题:
{foreach value=users from=$comment}
<tr>
<td>{$users.ADD_DATE}</td>
<td>{$users.NAME}</td>
{if $users.COMMENT|count_characters > 95}
<td><span id="comment12kisa_{$users.COMMENT.id}">{$users.COMMENT|truncate:95:"..."}
</span><a href="" onclick="$('#comment12kisa_{$users.COMMENT.id}').html($('#comment12kisaa_{$users.COMMENT.id}').html());return false;">devami</a></td>
{else}
<td><span id="comment12kisaa_{$users.COMMENT.id}">{$users.COMMENT}</span></td>
{/if}
<td><center><input type="checkbox" name="checkComment[]" value={$users.ID} /></center></td>
</tr>
{/foreach}
答案 0 :(得分:1)
您需要将COMMENT的完整值放入隐藏元素中,然后显示。目前,您只在HTML中生成截断版本。
{if $users.COMMENT|count_characters > 95}
<td><span id="comment12kisa">{$users.COMMENT|truncate:95:"..."}
</span>
<span id="comment12uzun" style="display"none">{$users.COMMENT}</span> <-- you need THIS
<a href="" onclick="$('#comment12kisa').html($('#comment12uzun').html());return false;">devami</a></td>
{else}
答案 1 :(得分:1)
因为您的每个跨度都有一个ID。作为解决方案,您可以在范围中添加comment.id
,例如:
<span id="comment12kisa_{$users.COMMENT.id}">
{$users.COMMENT|truncate:95:"..."}
</span>
当然,您也需要在JavaScript代码中进行更改。
答案 2 :(得分:0)
问题是您只有截断版本的评论或完整版本,而不是两者都有。如果评论长度超过95个字符,则需要在某处存储完整版本,并在用户点击链接时显示。
{if $users.COMMENT|count_characters > 95}
<td>
<span id="comment12kisa">{$users.COMMENT|truncate:95:"..."}</span>
<a href="" onclick="$('#comment12kisa').html($('#comment12uzun').html());return false;">devamı</a>
<span id="comment12uzun" style="display:none">{$users.COMMENT}</span>
</td>
{else}
<td>
<span id="comment12uzun">{$users.COMMENT}</span>
</td>
{/if}