AngularJs POST json数据通过ajax存储在$ scope中

时间:2014-02-18 22:20:54

标签: ajax json angularjs post angularjs-scope

我生气了:我正在使用角度js,我不知道如何正确发布数据。

我填写了一些html输入字段,其值存储在(例如) $ scope.prodotto 中,我必须发送 json 结构> $ scope.product 到我写过的网络服务。

不幸的是,使用检查员,我看不到任何东西。

我的意思是:我写过:

$scope.salva = function() {
    console.log($scope.prodotto);

    $http.post('./service/prodotti/create', $scope.prodotto).error(function(data, status, headers, config){
        console.log($scope.prodotto);
    });

};

Salva被绑定到一个按钮。通过ng-click参数。当我点击按钮时,会触发“salva”。 我看到$ scope.prodotto填充了正确的值(感谢console.log),但是......服务器什么都没有收到,浏览器也没有发送任何东西(用chrome的检查器检查req,显示一个空数组)

那么我做错了什么?

提前致谢!

2 个答案:

答案 0 :(得分:1)

我找到了解决方案。

不幸的是,变量“$ scope.prodotto”已初始化为数组:

$ scope.prodotto = [];

解决方案很简单。将其初始化为对象:

$ scope.prodotto = {};

就是这样。

答案 1 :(得分:0)

如果您的原始帖子出错,则只检查ajax调用。你需要使用这样的成功回调:

$scope.salva = function() {
    console.log($scope.prodotto);

    $http.post('./service/prodotti/create', $scope.prodotto)
    .success(function(data, status, headers, config){
        console.log($scope.prodotto);
    });
    .error(function(data, status, headers, config){
        console.log($scope.prodotto);
    });

};