如何使用 AngularJS 的 ng-model 创建一个数组以及如何使用 jquery 提交?
Posted
技术标签:
【中文标题】如何使用 AngularJS 的 ng-model 创建一个数组以及如何使用 jquery 提交?【英文标题】:How to create an Array with AngularJS's ng-model and how to submit using jquery? 【发布时间】:2017-07-24 15:17:35 【问题描述】:我必须使用 jquery 和 angularjs 提交值数组。当我单击提交按钮时,我只得到第一个数组值。如何使用 ng-model 获取所有数组值。这是我的所有代码 https://jsfiddle.net/rijo/6dLxhr7j/ 下面给出的脚本代码
$scope.onSubmit = function()
sum = $scope.obj;
console.log(sum);
$http(
method : 'POST',
url : 'admin_controller.php',
data: $.param(sum),
headers: 'Content-Type': 'application/x-www-form-urlencoded'
).then(function (response)
console.log("OK");
);
请任何人帮忙..谢谢!
【问题讨论】:
AngularJS 框架一般会以'Content-Type: application/json
发布数据,不需要用jQuery param 方法序列化。
看***: Receive JSON POST with PHP。
【参考方案1】:
您必须将数据作为对象发布,将数组作为对象属性值传递。在这种情况下,我使用的是$http.post
快捷方式。
function buildParam()
// write any needed logic to get, build your array
// maybe a loop extracting values from collection, etc.
var myArray = []; // here your array of values, objects, etc.
return myArray;
$scope.onSubmit = function()
sum =
myAttr: buildParam()
;
$http.post('admin_controller.php', sum).then(
function(response)
console.log('ok');
);
【讨论】:
我想获得动态值,而不是静态值 你能告诉我如何从我的 html 代码中获取动态值 $http 服务自动转换带有angular.toJson
的请求数据。请参阅AngularJS $http Service API Reference - Default Transformations 或在$http service source code line #293 中亲自查看。以上是关于如何使用 AngularJS 的 ng-model 创建一个数组以及如何使用 jquery 提交?的主要内容,如果未能解决你的问题,请参考以下文章
如何根据 angularjs 中的选定对象更新 ng-model?
Angularjs - 如何“ng-repeat”一个 div 以获取“ng-model 中的值”-times?
ng-model 绑定到 ng-repeat Angularjs 中的元素
AngularJS - 创建一个使用 ng-model 的指令