Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 击倒Json获取_Javascript_Php_Jquery_Json_Knockout.js - Fatal编程技术网

Javascript 击倒Json获取

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

我是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: { 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>