现在我有两个php页面。
第1页有一个函数,其中正在执行AJAX调用。关于成功,我想用id omschrijving在一个特定的跨度中展示结果。
代码:
function toonProfiel() {
$.ajax({
type: "GET",
url: "./query/get.php",
dataType: 'json',
success: function (value) {
alert (value.omschrijving);
$("#omschrijving").html(value.omschrijving);
}
});
}
当然,我还有get.php页面,它看起来像这样(简化):
if ($stmt = $mysqli->prepare("SELECT omschrijving FROM leden")) {
/* execute query */
$stmt->execute();
/* bind result variables */
$stmt->bind_result($omschrijving);
/* fetch value */
$stmt->fetch();
$value= array(
'omschrijving' => $omschrijving
);
echo json_encode($value);
/* close statement */
$stmt->close();
}
/* close connection */
$mysqli->close();
?>
现在,当我提醒值.omschrijving时,标记仍然很好。显然,它正确地保存在mySQL中,也以正确的格式检索。
但是,当然,当我使用函数.html(value.omschrijving)时,它不是html格式的,所以它只是一个长字符串。
它看起来是这样的:这是第1行。这是2号线。
HTML FORMAT(引号出现在开发人员工具中,但不在页面上,空白规则出现但不在页上):
<span id="omschrijving">
"this is line 1.
this is line 2."
</span>
我想保留/添加html格式,这样它就会显示如下:
这是1号线。
这是2号线。
这可能吗?
"span"标记用于显示"内联"元素。您的文本被包装在一个跨度标记中,因此它显示在一行上。插入换行符的方法有很多,您可以将每一行包装在"p"或"div"标记中,也可以简单地在需要的地方插入换行符"br"。只要你没有看到html标记,你的代码就可以正常工作。即使你的html看起来像这样:
<span id="omschrijving">
"this is line 1.
this is line 2."
</span>
在代码编辑器中,如果不使用" ;"或换行标记,空白和换行符就不会自动保留。如果您不希望使用"与"符号或换行标记,也可以查看CSS的空白属性。
您的文本字符串是否被换行符打断?这就解释了为什么它们在MySQL中看起来很好,而在HTML 中则不然
尝试:
function (value) {
value.split("n").map(function(n,i){return "<p>"+n+"</p>";}).join("n");
alert (value.omschrijving);
$("#omschrijving").html(value.omschrijving);
}
这将在新行上拆分,然后用<p> 标记,然后在每行之间重新加入一行换行符,只是为了可读性。