Javascript 击倒Json获取
我是knockout.js的新手,我有一个问题。我找到了一些密码。我的get函数返回{id:1,name:cardio,image:aslas,header:Kardio,message:message\r\n},但它不工作。有人能帮我吗?谢谢Javascript 击倒Json获取,javascript,php,jquery,json,knockout.js,Javascript,Php,Jquery,Json,Knockout.js,我是knockout.js的新手,我有一个问题。我找到了一些密码。我的get函数返回{id:1,name:cardio,image:aslas,header:Kardio,message:message\r\n},但它不工作。有人能帮我吗?谢谢 <ul class="folders" data-bind="foreach: folders"> <li data-bind="text: $data, css: { selec
<ul class="folders" data-bind="foreach: folders">
<li data-bind="text: $data,
css: { selected: $data == $root.chosenFolderId() },
click: $root.goToFolder"></li>
</ul>
<div class="mails" data-bind="with: chosenFolderData">
<p><label>From</label>: <span data-bind="text: name"></span></p>
</div>
<script>
function WebmailViewModel() {
// Data
var self = this;
self.folders = ['cardio', 'classic', 'mass', 'abs']
;
self.chosenFolderId = ko.observable();
self.chosenFolderData = ko.observable();
self.chosenMailData = ko.observable();
// Behaviours
self.goToFolder = function(folder) {
self.chosenFolderId(folder);
self.chosenMailData(null);
$.get(ajax_url+'Dieticians/video/'+folder,null, self.chosenFolderData);
};
self.goToFolder('Inbox');
};
ko.applyBindings(new WebmailViewModel());
</script>
这就是你要找的吗
看起来对我有用。在这里检查。如果你想找一些特别的东西,请告诉我们,上面的小提琴看起来因为拼写错误而断裂了。当您单击文件夹按钮时,它从服务器获取json并将其写入span@超级奥运会你所需要做的只是有一个ajax调用,它可以动态地获取你的数据并将数据推送到self.chosenFolderData中;self.chosenFolderData{'name':folder};>$。getajax_url+'Dieticians/video/'+文件夹,null,self.chosenFolderData;它返回{id:1,name:cardio,image:aslmk\u015fga\u015fgkl,header:Kardio,message:messagetext}。但不要在span中写任何东西@超级解析它是有效的,但当我使用:$.getajax_url+'Dieticians/video/'+folder,null,self.chosenFolderData;它不起作用@Kelvin17$.ajax{url:ajax_url+'Dieticians/video/'+文件夹,数据类型:'json',success:functiondata{self.chosenFolderDatadata;};如果你想设置它的值,你必须这样说。chosenFolderData[valueyouwant]在一个你在ajax请求成功后创建的函数中,看:希望这有帮助
<ul class="folders" data-bind="foreach: folders">
<li data-bind="text: $data,
css: { selected: $data == $root.chosenFolderId() },
click: $root.goToFolder"></li>
</ul>
<br>
<div class="mails" data-bind="with: chosenFolderData">
<p><label>From</label>: <span data-bind="text: name"></span></p>
</div>
<script type="text/javascript">
function WebmailViewModel() {
var self = this;
self.folders = ko.observableArray(['cardio', 'classic', 'mass', 'abs']);
self.chosenFolderId = ko.observable();
self.chosenFolderData = ko.observable();
self.chosenMailData = ko.observable();
// Behaviours
self.goToFolder = function(folder) {
console.log(folder);
self.chosenFolderId(folder);
self.chosenMailData(null);
//apply you ajax call and fill 'chosenFolderData'
self.chosenFolderData({"id":"1", "name":"cardio", "image":"aslas", "header":"Kardio", "message":"message\r\n"});
};
self.goToFolder('Inbox');
};
ko.applyBindings(new WebmailViewModel());
</script>