1
我想提交提交symfony 2.8
形式angularJS
脚本形式不是通过angularjs
我symfony的形式树枝是如下:
<div ng-app="mediqApp" ng-controller="mediqController">
{{ form_start(form, {'attr':{'id': 'mediForm', 'ng- submit':'processMediqForm()'}}) }}
{{ form_row(form.name, {'attr':{'ng-model':'formData.name'}}) }}
{{ form_row(form.description, {'attr':{'ng-model':'formData.description'}}) }}
<div><input type="submit" value="Save"/></div>
{{ form_end(form) }}
</div>
我的角的js脚本如下:
var mediqApp = angular.module("mediqApp", []).controller("mediqController",function($scope, $http, $log){
$scope.formData = {};
$scope.processMediqForm = function() {
$http({
method : 'POST',
url : "{{ path('medicine_new') }}",
data : $.param($scope.formData),
headers : { 'Content-Type': 'application/x-www-form-urlencoded' }
})
.success(function(data) {
console.log(data.message);
});
};
});
当我通过代码console.log($scope.formData)
检查我的formData
值时,我得到了像这样的输入值对象{name: "Crocin", description: "Help in Headache, little fever"}
但是,当我试图提交表单我收到的错误是这样的:
SyntaxError: Unexpected token <
at Object.parse (native)
at pc (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.3/angular.min.js:14:219)
at Yb (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.3/angular.min.js:76:201)
at https://ajax.googleapis.com/ajax/libs/angularjs/1.3.3/angular.min.js:77:22
at r (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.3/angular.min.js:7:302)
at Wc (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.3/angular.min.js:77:4)
at c (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.3/angular.min.js:78:109)
at https://ajax.googleapis.com/ajax/libs/angularjs/1.3.3/angular.min.js:110:505
at k.$eval (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.3/angular.min.js:124:325)
at k.$digest (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.3/angular.min.js:121:427)
我无法理解我在做什么错。
您的网址是错误的:'网址:“{{路径(‘medicine_new’)}}”,',它应该是一个字符串,类似于:'url:“/ medicine/new”,' –
这是可以的,因为在symfony2中传递了这个方法,最后我解决了我的问题,在formData中我传递了错误的证书。它是sved。非常感谢您的帮助! –
那么,你错过了'AUTH'标题或类似的东西? –