Javascript 使用JqueryMobile取消JS数据绑定
我正在使用knockout js与JqueryMobile进行前端数据绑定,我有一个视图,它与knockout js对象调用DataGrid绑定。DataGrid对象包含填充在表中的对象数组(使用fooTable)。当用户单击一行时,它应该加载到另一个页面。我想将所选对象绑定到UI,但当前未发生。它仅将DataGrid对象绑定到UI,有人能指导我完成此操作吗Javascript 使用JqueryMobile取消JS数据绑定,javascript,jquery,jquery-mobile,knockout.js,Javascript,Jquery,Jquery Mobile,Knockout.js,我正在使用knockout js与JqueryMobile进行前端数据绑定,我有一个视图,它与knockout js对象调用DataGrid绑定。DataGrid对象包含填充在表中的对象数组(使用fooTable)。当用户单击一行时,它应该加载到另一个页面。我想将所选对象绑定到UI,但当前未发生。它仅将DataGrid对象绑定到UI,有人能指导我完成此操作吗 //Data Grid Object function DataGrid(){ var self = this; self
//Data Grid Object
function DataGrid(){
var self = this;
self.dataGrid = ko.observableArray();
self.addTicketToGrid = function(ticket){
self.dataGrid.push(ticket);
}
}
function Ticket(jsTicket){
var self = this;
ko.mapping.fromJS(jsTicket, {}, this);
this.formattedDate = moment(self.date(),"YYYY-MM-DDTHH:mm:ss").format("MM-DD HH:MM");
this.getRunTicket = function(){
servicet.getTicket(self);
}
}
用于ticketDetailsPage的html
<div data-role="page" id="runTicketDetailsPage" data-theme="b">
<div data-role="content" data-theme="b" data-position="fixed">
<h1>Ticket No (<span data-bind="text: ticketNumber"></span>)</h1>
<button id="save" data-icon="save" class="ui-btn-right" data-bind="click: refreshGrid">Save</button>
</div>
</div>
车票号码()
拯救
在这里,ticketNumber
不显示任何值,但如果我将dataGrid().length
替换为ticketNumber,它会显示数据网格的大小,有人能告诉我这段代码有什么问题吗
提前谢谢你你可能会发现这篇博文非常有用。谢谢你,我找到了解决方案。
<tbody data-bind="foreach : dataGrid">
<tr>
<td><span data-bind="text : number(),click: getTicket"></span></td>
<td><span data-bind="text : formattedDate></span></td>
<td><span data-bind="text : operatorName()"></span></td>
</tr>
</tbody>
goToRunTicketDetails: function(ticket){
$.mobile.navigate( "#ticketDetailsPage" );
alert(ticket.ticketNumber) // this alert shows the ticketNumber
ko.applyBindings(ticket);
}
<div data-role="page" id="runTicketDetailsPage" data-theme="b">
<div data-role="content" data-theme="b" data-position="fixed">
<h1>Ticket No (<span data-bind="text: ticketNumber"></span>)</h1>
<button id="save" data-icon="save" class="ui-btn-right" data-bind="click: refreshGrid">Save</button>
</div>
</div>