有没有一种模式或我可以做些什么来正确加载远程 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 这是我的情况的更完整示例。
索引.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>
远程.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>