Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.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 使用参数从方法解析对象的句柄_Javascript_Jquery_Handlebars.js - Fatal编程技术网

Javascript 使用参数从方法解析对象的句柄

Javascript 使用参数从方法解析对象的句柄,javascript,jquery,handlebars.js,Javascript,Jquery,Handlebars.js,我有以下情况: {{#each .}} <tr class="gradeA"> <td>{{Code}}</td> <td>{{getStudent.name}}</td> </tr> {{/each}} 在我看来,这样做是一个非常糟糕的主意。实际上,您的模板正在进行AJAX调用。为什么不将此调用移动到视图或控制器,并在AJAX调用完成后呈现您的模板?@garethdn如果我这样做

我有以下情况:

{{#each .}}
    <tr class="gradeA">
      <td>{{Code}}</td>
      <td>{{getStudent.name}}</td>
    </tr> 
{{/each}}

在我看来,这样做是一个非常糟糕的主意。实际上,您的模板正在进行AJAX调用。为什么不将此调用移动到视图或控制器,并在AJAX调用完成后呈现您的模板?@garethdn如果我这样做,我如何从把手{{each}}循环内部调用它?我不知道您是否有学生集合,但假设您可以获取学生集合….
{{each students}}Name:{{Name},GPA:{{GPA}}{{/each}}
。如果看不到您试图呈现的数据的典型表示,很难说。@AliIssa您在上下文中以数组的形式传递您想要读写的内容。e、 var context={something:[{value:1},{value:2},{value:3}]};在你的模板中:{{{each something}}Value是{{Value}{{/each}},{each}}不是学生列表,它是另一个对象的列表,在它里面我需要得到学生对象,它就像x对象的循环,在它里面我需要从y对象得到一条记录,所有这些都在Handlebar模板中
Handlebars.registerHelper("getStudent", function getStudent(studentId) {
                    var student = {};
                    $.ajax({
                        url : "getstudent",
                        type : "get",
                        data : {
                            studentId : studentId
                        },
                        success : function(response) {
                            student = response;
                        },
                        async : false
                    });
                    return student;
                });