【问题标题】:how to send object array in ext js 4 to server side?如何将 ext js 4 中的对象数组发送到服务器端?
【发布时间】:2013-01-22 09:18:56
【问题描述】:

我在 extjs4 MVC 中工作,我一直在处理创建问题答案页面功能的任务。有 4 个问题要显示有选项。我在控制器中获得了所有选定的问题和答案。但我不知道如何使用模型方法发送到服务器端。我现在卡住了。

这是我的一些控制器代码 1)

check:function()
    {
        console.log("Inside check function.");
        //creating objects in javascript
          var obj=new Object();
          for(var i=0;i<=5;i++)
          {
                var inputs = document.getElementsByName(i); 
                var radio = "";  
                for (var j = 0; j < inputs.length; j++) {
                    if (inputs[j].checked) {
                        name = inputs[j].name;
                        value  = inputs[j].value;
                        //obj[i].name1=name;
                        obj[i]={'questionId':name,'option':value};
                        console.log("questionId="+name +" value="+ value);
                        console.log("object name="+ obj[i].questionId+" Object value="+obj[i].option);
                    }// End of if statment
                }// End of inner for loop
          }//End of outer for loop

    }// End of check function

2) 我在 firebug 中得到了一些输出

questionId=1 value=Aus QbqnsController.js:39
questionId=2 value=india QbqnsController.js:39
questionId=3 value=England QbqnsController.js:39
questionId=4 value=Srilanka 

实际上我想使用模型类方法 save() 。但我该如何使用它。 请给我一些建议。

3)这是我的模型类

Ext.define('Balaee.model.qb.QbqnsModel',{
    extend: 'Ext.data.Model',
    idproperty:'questionId',//fields property first position pk.
    fields: ['questionId','question','languageId','userId','creationTime','questionStatusId','keyword'],
    hasMany:{
            model:'Balaee.model.qb.QbqnsoptionModel',
            foreignKey:'questionId',
            name:'options',
        },


        proxy:
        {
            type:'ajax',
            api:
            {
                    read:'http://localhost/balaee/balaee/index.php?r=QuestionBank/qbpaper/setuseranswer',
                    create:'http://localhost/balaee/balaee/index.php?r=QuestionBank/qbpaper/setuseranswer',
            },//end of api
            reader:
            {
                    type:'json',
            },//end of reader
            writer:
            {
                    type:'json',
                    root:'records',
            },//End of writer
        }   

});

【问题讨论】:

    标签: php extjs extjs4 extjs-mvc


    【解决方案1】:

    如果您使用 Ext MVC 并且您的问题是存储在 store 中的 model 实例,您可以使用 store.sync() 将数据批处理为不同状态(添加、编辑、删除等)和将它们与相关的商店或模型代理 url 或指定的 api url 同步。

    这具有在单个请求中发送回对象数组的好处,但是当然您需要在处理之前在服务器端将它们分开。

    【讨论】:

      【解决方案2】:

      在您的函数中,您可以使用 Ext.Ajax.request 发送它们

          Ext.Ajax.request({
      
            url: 'your_server_page.php ',
              params: { 
                 Your_Object_Name  : JSON.stringify(Your_Object_Array)
             }                                        
      });
      

      【讨论】:

      • 谢谢。我正在使用 MVC。那么我应该调用哪种模型方法。请给我一些信息。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-10-09
      • 1970-01-01
      • 2016-12-15
      • 2019-08-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多