如何从角度js将对象传递给HTTPOST方法

时间:2015-07-28 03:59:05

标签: javascript angularjs http

我想使用$ http方法将对象传递给我的控制器。但我传递的数据是NULL,尽管该对象具有值。以下是示例代码。

在我的js文件中,我有一个这样的对象:

      $scope.emp ={
                     Name :null,
                      Age:null
                      };

// in a form am capturing the

se值,所以this.emp有价值。

在提交按钮上单击,我尝试使用http方法将此数据发送到我的控制器:

//我的html页面

<button type="submit" ng-click="saveForm()" >Submit</button>

//我的js文件

              $scope.saveForm=function()
             {
              try{
                 $http({
                url:'Employee/SaveEmployee',
                method: "POST",
                data: this.emp,
                }).success(function (response) {

            });
        }
        catch(e){}
           }

在调试模式下,我可以看到this.emp有值,但数据没有。所以传递给我的Controller方法的值是NULL。你能否请我找出错误。

1 个答案:

答案 0 :(得分:0)

我的理解是您尝试使用绑定变量$ scope.emp从控制器中的表单捕获数据。获得数据后,您需要使用$ http post发送数据。

您的问题是您的当前设置中未定义this.emp。你想要的是用$ scope.emp替换this.emp。您的代码应如下所示:

$http.post('Employee/SaveEmployee',$scope.emp)
    .success(function(response) { 
        console.log('Post Successful'); 
};