我正在使用 Kendo UI WYSIWYG 编辑器将格式化文本输入到使用 PHP 的 MySQL 数据库中。这一点工作正常。我在我的数据库中编码了 HTML。
我正在使用 Kendo UI ListView 从数据库中输出数据。我发现我需要使用 2 个函数来获取正确的 HTML 编码:
$row["body"] = stripslashes(html_entity_decode($row["body"]));
$row["body"] = str_replace(" ", " ", $row["body"]);
现在 JSON 提要输出正确的 HTML(据我所知,只需最少的测试)。
从 JSON 提要中获取数据并将其显示在 ListView 页面上的 Javascript 现在显示的是 HTML 代码,而不是编码的 HTML 代码,这很好,但我真正想要的是它显示实际的格式化文本。
我第二次尝试通过 html_entity_decode() 解析字符串,但没有成功。我认为这是必须使用 JS 完成的事情,但我不确定如何专门使用 Kendo UI 来实现这一点,因为它正在执行所有解析。
我的 JS:
$(document).ready(function() {
var dataSource = new kendo.data.DataSource({
transport: {
read: {
url: "http://dev.openbill.co.uk/admin/crud/viewticket/main.json.php?id=<?php echo $_GET['id']; ?>",
contentType: "application/json; charset=utf-8",
type: "GET",
dataType: "json",
}
},
schema: {
data: "data",
total: "total",
parse: decode
},
serverPaging: true,
serverSorting: true,
pageSize: 10,
page: 1,
});
$("#pager").kendoPager({
dataSource: dataSource
});
$("#listView").kendoListView({
dataSource: dataSource,
template: kendo.template($("#template").html())
});
});