Javascript 如何使用JSON对象填充敲除表单
我有一个表单,我想使用JSON对象的敲除数据绑定来填充它。我已经用knockout硬编码了这些值。我真正想要的是,既然我有一个JSON对象,我如何将它转换成数据,knockout可以用来动态填充我的表单?这是我的 英雄的名字: 代理写入编号: 联络电话: var HeroDetails=$.get(“GetHeroDetailsForVillianView”{ HeroRequestIdForvillianDetailsView:HeroRequestIdForvillianDetailsView },函数(returnDataForDetails){ var results=JSON.parse(returnDataForDetails); $('#json').text(json.stringify({HeroName:'PeterParker',ContactPhone:'123456',HeroCode:3},null,4)); 函数ViewModel(){ var self=这个; self.HeroName=ko.observable(“彼得·帕克”); self.ContactPhone=ko.可观察(“123456858”); self.HeroCode=ko.可观察(“2455654”); } 应用绑定(新的ViewModel());Javascript 如何使用JSON对象填充敲除表单,javascript,json,knockout.js,jspdf,Javascript,Json,Knockout.js,Jspdf,我有一个表单,我想使用JSON对象的敲除数据绑定来填充它。我已经用knockout硬编码了这些值。我真正想要的是,既然我有一个JSON对象,我如何将它转换成数据,knockout可以用来动态填充我的表单?这是我的 英雄的名字: 代理写入编号: 联络电话: var HeroDetails=$.get(“GetHeroDetailsForVillianView”{ HeroRequestIdForvillianDetailsView:HeroRequestIdForvillianDetailsVie
有几种方法可以做到这一点,但jQuery非常简单 我将ID添加到需要数据的每个div中,然后将其添加到javascript中:
var myJson = {HeroName:'PeterParker', ContactPhone: '123456', HeroCode: 3 };
$('#hname').append(myJson.HeroName);
$('#agent').append(myJson.ContactPhone);
$('#contact').append(myJson.HeroCode);
可能无法完全按照您的意愿工作,但应该为您指明正确的方向。有几种方法可以做到这一点,但jQuery非常简单 我将ID添加到需要数据的每个div中,然后将其添加到javascript中:
var myJson = {HeroName:'PeterParker', ContactPhone: '123456', HeroCode: 3 };
$('#hname').append(myJson.HeroName);
$('#agent').append(myJson.ContactPhone);
$('#contact').append(myJson.HeroCode);
可能无法完全按照您的意愿工作,但应该为您指明正确的方向。有关更多详细信息,请查看KO文档的页面。您可能还对该插件感兴趣
以下是我使用的模式:
function ViewModel(data) {
var self = this;
self.HeroName = ko.observable(data.HeroName);
self.ContactPhone = ko.observable(data.PhoneNumber);
self.HeroCode = ko.observable(data.HeroCode);
}
var viewModel;
$.getJSON("/some/url", function(data) {
viewModel = new ViewModel(data);
})
ko.applyBindings(viewModel);
有关更多详细信息,请查看KO文档的页面。您可能也对该插件感兴趣
以下是我使用的模式:
function ViewModel(data) {
var self = this;
self.HeroName = ko.observable(data.HeroName);
self.ContactPhone = ko.observable(data.PhoneNumber);
self.HeroCode = ko.observable(data.HeroCode);
}
var viewModel;
$.getJSON("/some/url", function(data) {
viewModel = new ViewModel(data);
})
ko.applyBindings(viewModel);
动态:只绑定JSON对象
var jsonDataViewModel = {HeroName:'Peter Parker', ContactPhone: '123456', HeroCode: 3};
ko.applyBindings(jsonDataViewModel);
动态:只绑定JSON对象
var jsonDataViewModel = {HeroName:'Peter Parker', ContactPhone: '123456', HeroCode: 3};
ko.applyBindings(jsonDataViewModel);
在
ViewModel
中,您需要设置新值。变量已经可以观察到,因此您需要self.HeroName(results.HeroName)
。这意味着您移动了该$的成功回调。在ViewModel
中获取。在ViewModel
中,您需要设置新值。变量已经可以观察到,因此您需要self.HeroName(results.HeroName)
。这意味着您移动了该$的成功回调。在视图模型中获取。我本来打算使用Jquery并完成它。敲除在解决方案中广泛使用,但很遗憾是必需的。感谢您的出色响应。看起来@Ryan的答案应该能满足您的需要。我是o我将严格使用Jquery并完成它。在解决方案中广泛使用Knockout,不幸的是这是必需的。感谢您的出色响应。看起来@Ryan的答案应该能满足您的需要。如果JSON对象在我的viewmodel之外呢?我如何从viewmodel获得它?我不太确定你的意思是什么。你必须给viewModel一个对你的对象的引用。你可能想用一个代码示例打开一个新问题。如果JSON对象在我的viewModel之外怎么办?我如何从viewModel获得它?我不太清楚你的意思。你必须给viewModel一个对你的对象的引用。你可能想使用代码示例打开一个新问题。