在Mysta数据库中填充的textarea字段中嵌入了标签?

时间:2017-01-26 09:11:51

标签: javascript php jquery html mysql

我在一个模态中的只读<textarea>字段内显示一个日志,该字段填充了来自我的MySQL数据库的数据。 在这个textarea下面,我有另一个可写的<textarea>字段,用户应该在该字段中输入对日志的任何更新,然后将其附加到现有的日志记录中。

所有这一切都运行正常,但问题在用户在可写textarea中输入换行符时开始,然后在textarea字段中打印为<br>标签。

我有什么方法可以嵌入标签并将其转换为实际的换行符吗?

enter image description here

编辑: 在我用来提取“旧”的代码之下我的数据库中Action列的内容,然后从textarea附加新输入的内容

// select 'Follow Up Action' that is already on file
$sql2 = "SELECT distinct Action from qci_dmlog_data WHERE LogID = '$updLogID'";
$result2 = $db->query($sql2) or die('<p>Query to get existing Follow Up Action from qci_dmlog_data table failed: ' . mysqli_error() . '</p>');

while ($row = $result2->fetch_array(MYSQLI_ASSOC)) {
    $old_action = $row["Action"];
}

$line_insert = '<br /><strong>[Follow-Up Action]</strong> '.$_SESSION['User_Last'].', '.$_SESSION['User_First'].' - '.date('Y-m-d H:i').'<br />';
$updAction = $old_action . $line_insert . $updAction;

最终$updAction变量基本上由旧内容+换行符信息+新内容组成,然后写回数据库

1 个答案:

答案 0 :(得分:1)

您可以使用我刚刚制作的jsFiddle

以下是我用于示例的javascript:

$.ajax({
    url: "https://baconipsum.com/api/?type=all-meat&paras=3&start-with-lorem=1&format=html",
  method: "GET",
  dataType: "HTML",
  success: function(data) {

    console.log(data);

    $("#raw").text(data);

    $("textarea").html( data.replace(/<p>/g, '').replace(/<\/p>/g, "&#10;") );
  } 

})

但是您应该替换换行符<br>\n代码:

.replace(/<br>|\n/g, "&#10;")

换行符"&#10;HTML EntitiesWikipédia,您还可以使用回车符&#13;