0
我有這樣的代碼:阿賈克斯+淘汰賽stopBinding標籤問題
第1頁:
<html>
<head></head>
<body>
<a href="javascript:loadPage()">Test</a>
<div id="content"></div>
</body>
</html>
第2頁:
<!-- ko stopBinding: true -->
<div id="testView_content">
<span data-bind="text: mae"></span>
</div>
<!-- /ko -->
相關JS:
var lou;
function loadPage() {
$('#content').html("");
$.ajax({
url: "./page/page2.html"
cache: false,
dataType: "html",
success: function(data) {
fillPage();
}
});
}
function fillPage() {
$('#content').html(data);
$('#content').show("slow");
if (!lou) {
lou = new Lou();
ko.applyBindings(lou, document.getElementById('testView_content'));
}
}
KO型號:
var Lou = function() {
this.mae = ko.observable("test");
};
嗯,它的工作原理是第一次,但如果我再次運行該函數,html將呈現爲空(但敲除模型視圖isnt,我檢查)。任何人有任何想法?也許我做錯了使用ajax + stopBinding,也許我的負載設計?我嘗試使用stopBinding標籤內內容DIV(第1頁),而不是創建一個新的第2頁,但沒有成功=(
我真的新的淘汰賽,所以任何幫助將是驚人的。
謝謝!
我還沒有看過ko,但它讓我感到你沒有將'data'變量傳遞給fillPage(),所以在fillPage()的第1行中,'data'將等於'undefined' - 除非你省略了一些相關的東西。 – 2014-09-04 04:46:09