我有一个页面,用户在html文本区域中输入评论。最近,用户在评论中加入了要点。
以下是用户如何在html文本区域中输入注解的要点:
现在,保存注解后,下面是注解在数据库中的外观:
我在数据库中添加了额外的列,以便清楚地看到有多个条目带有带项目符号的注解。
返回数据后,将注解显示到jquery datatable单元格中,注解的显示完全如下图所示:
如果您注意到这张图片,要点是段落形式的,而不是像最初在html文本区域中输入时那样分开。
我需要做的是在datatable单元格中出现的每个项目符号后添加一个换行符,使其看起来像最初输入的那样。
我不确定是否需要用mysql来实现这一点,但是下面是查询数据库时php/mysql的外观:
<?php
include("../include/database.php");
$select = "SELECT pk, region, loctype, city, twenty, twenty_comm FROM eqpstatus";
$query = mysqli_query($dbc, $select);
$out = array();
while($row = $query->fetch_assoc())
{
$out[] = $row;
}
echo json_encode($out);
?>
我不确定是否有办法检查mysql查询中的项目符号。
在jquery方面,下面是如何将datatable返回到页面(尽可能缩短):
var newData = 'process/eqpGuide.php';
$('#example1').DataTable({
"ajax": {
"url": newData,
"type": "POST",
"dataSrc": ''
},
"columns": [
{"data": "region"},
{"data": "loctype"},
{"data": "city"},
{"data": "twenty"},
{"data": "twenty_comm"} // here is where I need to check for bullet points
],
"iDisplayLength": 25,
"order": [[ 1, "desc" ]],
"paging": false,
"scrollY": 550,
"scrollX": true,
"bDestroy": true,
"stateSave": true,
"autoWidth": true
});
所以,为了重申我提到的所有内容,我需要做的只是涉及数据库的twenty\u comm部分,即在每个项目符号后添加一个换行符。我不确定这是否应该或者可以在代码的php/mysql部分完成,或者是否可以在datatable的jquery端完成。
问:在php/mysql或jquery中,如何在项目符号后添加换行符?
3条答案
按热度按时间pgx2nnw81#
编辑
我认为最好的办法是在用户提交文本时添加新行。。。在保存到数据库之前。但这是一种观点。
第二个最好的方法是在服务器端执行字符串操作,因为依赖客户机的设备(我删除的最差的解决方案…)在服务器上执行操作被认为是不好的做法。
试试这个:
djmepvbi2#
你可以试着用
preg_split()
用你的twenty_comm
列并添加<br />
char,不知道它将如何呈现:m1m5dgzv3#
我猜你的意思是你想在子弹前面加一个换行符,在子弹后面加一些空格?不可能知道后面是什么,除非就在下一颗子弹之前。你可以用一根柱子
render
回拨:第一个正则表达式只是将bullet(或middot)替换为一个bullet和两个whitepaces。接下来是负面展望
<br>
在子弹之前,除了第一次出现。看到了吗http://jsfiddle.net/cj6nk8yz/