在这个沉重的您可以看到三个kendo窗口,前两个窗口使用AngularJS指令声明,第三个窗口使用jQuery声明。内容在三个窗口中设置,但仅显示在jQuery窗口中。我做错了什么?为什么前两个窗口是空白的?
这是HTML:
<div kendo-window="win1" k-title="'Win 1'"
k-width="300" k-height="200"
k-content="'<h1>Some Text 1111</h1>'"></div>
<div kendo-window="win2" k-title="'Win 2'"
k-width="200" k-height="200"
k-content="htmlContent"></div>
<div id="win3"></div>以及javascript:
angular.module("KendoDemos", [ "kendo.directives" ]);
function MyCtrl($scope) {
$scope.htmlContent = '<h1>Some Text 2222</h1>';
}
$(document).ready(function () {
$("#win3").kendoWindow({
visible: true,
width: "400px",
height: "200px",
title: "Win 3"
});
var kendoWindow = $("#win3").data("kendoWindow");
kendoWindow.content("<H1>Some text 3333</H1>");
kendoWindow.center().open();
});更新
我在控制台中看到,kendo试图在k-content中加载一个文件,而不是接受文本:
加载资源失败:服务器响应状态为404 (未找到) http://run.plnkr.co/0dvkHRto0wShGuIS/%3Ch1%3ESome%20Text%201111%3C/h1%3E?_=1415936598247
加载资源失败:服务器响应状态为404 (未找到) http://run.plnkr.co/0dvkHRto0wShGuIS/%3Ch1%3ESome%20Text%202222%3C/h1%3E?_=1415936598248
因此,问题是如何使KendoUI直接显示html文本,而不是认为k内容指向文件。
发布于 2014-11-14 03:58:14
在加载控制器时没有创建窗口。因此,而不是
$scope.htmlContent = '<h1>Some Text 2222</h1>';使用这个
$scope.$on("kendoWidgetCreated", function(ev, widget){
if (widget === $scope.win2) {
$scope.win2.content("<h1>Some Text 2222</h1>");
}
});https://stackoverflow.com/questions/26922108
复制相似问题