Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/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 Ext JS 4可编辑网格_Javascript_Extjs_Extjs4 - Fatal编程技术网

Javascript Ext JS 4可编辑网格

Javascript Ext JS 4可编辑网格,javascript,extjs,extjs4,Javascript,Extjs,Extjs4,我正在尝试编写ExtJS应用程序,它是网格,从服务器上的JSON文件加载数据,并将修改后的字段发送回服务器。问题是,我无法将更改或添加的数据实际发送回服务器脚本。代码如下: var store = Ext.create('Ext.data.Store', { model: 'ObjectDefinitionModel', autoDestroy: true, autoLoad: true, proxy: { type: 'ajax',

我正在尝试编写ExtJS应用程序,它是网格,从服务器上的JSON文件加载数据,并将修改后的字段发送回服务器。问题是,我无法将更改或添加的数据实际发送回服务器脚本。代码如下:

var store = Ext.create('Ext.data.Store', {
    model: 'ObjectDefinitionModel',
    autoDestroy: true,
    autoLoad: true,
    proxy: {
        type: 'ajax',
        url: 'load-object-definition',
        api: {
            read: 'load-object-definition',
            create: 'save-object-definition',
            update: 'update-object-definition',
            destroy: 'delete-object-definition'
        },
        reader: {
            type: 'json',
            root: 'fields'
        },
        writer: {
            type: 'json',
            root: 'fields'
        }
    }
});
我有一个按钮,按下时会调用
store.sync()
。syncinc之后,
保存对象定义中的脚本执行,但它接收到的(POST和GET中的)都是
[\u dc]=>1311511955134
,我不知道它是什么。 API文档说明,所有更改和添加的数据都应打包并通过代理自动发送。官方示例没有显示实际发送的任何数据,只有一些调试消息。
我们将感谢您的帮助,提前谢谢

在我的一个项目中,我也遇到了同样的问题,我应该只将新添加或更新的记录发送到服务器进行保存。我最初尝试使用您在此处发布的相同方法,但后来(因为它对我也不起作用)我创建了自定义代码来执行以下操作:

a。当用户单击按钮保存时,浏览网格中的所有记录并识别更新的或新添加的记录

b。创建包含所有此类记录的自定义JSON,并使用此JSON作为参数之一向服务器发出Ajax请求

这一切无疑是额外的工作,但最终还是达到了我的目的


希望这能有所帮助。

在我的一个项目中,我也遇到了同样的问题,我本应该只将新添加或更新的记录发送到服务器进行保存。我最初尝试使用您在此处发布的相同方法,但后来(因为它对我也不起作用)我创建了自定义代码来执行以下操作:

a。当用户单击按钮保存时,浏览网格中的所有记录并识别更新的或新添加的记录

b。创建包含所有此类记录的自定义JSON,并使用此JSON作为参数之一向服务器发出Ajax请求

这一切无疑是额外的工作,但最终还是达到了我的目的


希望这有帮助。

ExtJS代理确实在发送数据,但使用的是原始帖子。您可以使用以下功能获取它们:

function GetRAWdata()
{
    $result = NULL;
    if(function_exists('json_decode'))
    {
        $jsonData = json_decode(trim(file_get_contents('php://input')), true);
        $result = $jsonData['data'][0];
    }
    return $result;
}

ExtJS代理确实在发送数据,但使用原始POST。您可以使用以下功能获取它们:

function GetRAWdata()
{
    $result = NULL;
    if(function_exists('json_decode'))
    {
        $jsonData = json_decode(trim(file_get_contents('php://input')), true);
        $result = $jsonData['data'][0];
    }
    return $result;
}

尝试使用autoSave:trueNope,没有任何区别。尝试使用autoSave:trueNope,没有任何区别。