Angularjs 无法在角度函数中传递值

Angularjs 无法在角度函数中传递值,angularjs,Angularjs,我正在尝试将费用对象传递给提交函数。 但它并没有传递输入的值 var-app=angular.module('addApp',[]); app.controller('addController',函数($scope,$http){ console.log(“SAdfasd”); $scope.expense={param:'',值:0,dt:'',说明:'}; $scope.exp=[“一”、“二”、“三”]; $scope.submit=函数(数据){ 控制台日志(数据); console

我正在尝试将费用对象传递给提交函数。 但它并没有传递输入的值

var-app=angular.module('addApp',[]);
app.controller('addController',函数($scope,$http){
console.log(“SAdfasd”);
$scope.expense={param:'',值:0,dt:'',说明:'};
$scope.exp=[“一”、“二”、“三”];
$scope.submit=函数(数据){
控制台日志(数据);
console.log($scope.expense);
$http({
方法:“POST”,
url:“已添加”
数据:$scope.expense,
标题:{
“内容类型”:“应用程序/x-www-form-urlencoded”
}
}).success(函数(数据、状态、标题、配置){
控制台日志(数据);
}).错误(功能(数据、状态、标题、配置){
控制台日志(数据);
}
});

费用类型
数量
日期
描述
拯救

您正在向您的操作发送JSON obejct,但它需要Url参数。您可以从此处引用查询。 因此,从1.4.1开始提供$httpParamSerializerJQLike服务

$http({
url: 'added',
method: 'POST',
data: $httpParamSerializerJQLike(data), // Make sure to inject the 
service in to the controller
headers: {
'Content-Type': 'application/x-www-form-urlencoded' // header
}
}).then(function(response) { /* do something here */ });
第二种方法-

$http({
url: 'added',
method: 'POST',
data: 'param='+$scope.expense.param+'&value='+$scope.expense.value+'& dt='+$scope.expense.dt+ '& description='+$scope.expense.description   OR  'param='+encodeURIComponent($scope.expense.param)+'&value='+encodeURIComponent$scope.expense.value)+'& dt=+encodeURIComponent$scope.expense.dt)+ '& description='+encodeURIComponent$scope.expense.description)
service in to the controller
headers: {
'Content-Type': 'application/x-www-form-urlencoded' // header
}
}).then(function(response) { /* do something here */ });

请检查语法中是否有我可能遗漏的逗号。

您正在向您的操作发送JSON obejct,但它在Url参数中需要它。您可以从此处引用您的查询。 因此,从1.4.1开始提供$httpParamSerializerJQLike服务

$http({
url: 'added',
method: 'POST',
data: $httpParamSerializerJQLike(data), // Make sure to inject the 
service in to the controller
headers: {
'Content-Type': 'application/x-www-form-urlencoded' // header
}
}).then(function(response) { /* do something here */ });
第二种方法-

$http({
url: 'added',
method: 'POST',
data: 'param='+$scope.expense.param+'&value='+$scope.expense.value+'& dt='+$scope.expense.dt+ '& description='+$scope.expense.description   OR  'param='+encodeURIComponent($scope.expense.param)+'&value='+encodeURIComponent$scope.expense.value)+'& dt=+encodeURIComponent$scope.expense.dt)+ '& description='+encodeURIComponent$scope.expense.description)
service in to the controller
headers: {
'Content-Type': 'application/x-www-form-urlencoded' // header
}
}).then(function(response) { /* do something here */ });

请检查语法中我可能遗漏的逗号。

您使用的是NgBind,而不是NgModel:

var-app=angular.module('addApp',[]);
app.controller('addController',函数($scope,$http){
$scope.expense=
{param:'',值:0,dt:'',说明:'};
$scope.exp=[“一”、“二”、“三”];
$scope.submit=函数(){
//console.log(对象);
console.log($scope.expense);
}        
});

费用类型
数量
日期
描述
拯救

您使用的是NgBind,而不是NgModel:

var-app=angular.module('addApp',[]);
app.controller('addController',函数($scope,$http){
$scope.expense=
{param:'',值:0,dt:'',说明:'};
$scope.exp=[“一”、“二”、“三”];
$scope.submit=函数(){
//console.log(对象);
console.log($scope.expense);
}        
});

费用类型
数量
日期
描述
拯救

我尝试了$httpParamSerializerJQLike(数据),它序列化了对象,但在服务器上未显示数据
数据:$httpParamSerializerJQLike(数据)
是否还有其他配置我已经更新了答案..请检查它。使用$httpParamSerializerJQLike(数据)时检查了吗数据是如何从客户端发送的,或者它是否给出了任何错误。我尝试了$httpParamSerializerJQLike(数据),它在对象中序列化,但数据未显示在服务器上
data:$httpParamSerializerJQLike(数据)
还有其他配置吗?我已经更新了答案。请检查。您是否在使用$httpParamSerializerJQLike(数据)时检查了数据从客户端的传输情况,或者是否出现任何错误。