【发布时间】:2013-03-04 23:22:02
【问题描述】:
有没有一种模式或我可以做些什么来正确加载远程 asp.net 视图?我的索引页基本上是这样的:
索引页面使用new kendo.mobile.Application(document.forms[0])可以正常工作:
<form runat="server">
<div data-role="view" id="indexPageInitialView"> ... </div>
<div data-role="view" id="indexPageOtherView"> ... </div>
</form>
远程查看页面问题:
<form runat="server">
<div data-role="view" id="remoteView1"> ... </div>
<div data-role="view" id="remoteView2"> ... </div>
</form>
我知道 Kendo 加载的远程视图可以是 body 标签内的 [最多] 后代,所以我想我在这里退缩了。
更新 当我尝试简单地加载被表单标签包围的远程视图时,我收到了这个错误:
Uncaught TypeError: Cannot call method 'getAttribute' of undefined kendo.all.min.js:9
kendo.initWidget kendo.all.min.js:9
w.extend._createView kendo.all.min.js:31
w.extend._createRemoteView kendo.all.min.js:31
(anonymous function) kendo.all.min.js:31
l jquery.min.js:2
c.fireWith jquery.min.js:2
T jquery.min.js:2
r
如果我将表单标签嵌套在远程视图中,它可以工作,但是,这不是一个可行的解决方案。
更新 2 这是我的情况的更完整示例。
index.aspx:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Index</title>
</head>
<body>
<form runat="server">
<div id="indexPageInitialView" data-role="view">
<div data-role="content">
<a href="remote.aspx" data-role="button">Load remote view</a>
</div>
</div>
</form>
<script src="jquery.min.js"></script>
<script src="kendo.all.min.js"></script>
<script>
var app = new kendo.mobile.Application(document.forms[0]);
</script>
</body>
</html>
remote.aspx:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Remote</title>
</head>
<body>
<form runat="server">
<div id="remoteView1" data-role="view">
<div data-role="content">
<h1>Hi I am a remote view</h1>
</div>
</div>
</form>
</body>
</html>
【问题讨论】: