我正在使用 Kendo UI 所见即所得编辑器将格式化文本输入到使用 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())
});
});
最佳答案
确定了!
对于像我这样的人来说,谷歌搜索的时间太长了......
在您的模板中,替换:
${body}
与..
#= body #
它会显示格式化的 HTML
关于php - 在 Kendo UI 中显示编码的 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12990209/