[英]How to access data submitted by a form in Angularjs?
這是Ng-Book - the Complete Book on Angularjs Book by Ari Lerner
一個示例Ng-Book - the Complete Book on Angularjs Book by Ari Lerner
http://jsbin.com/voxirajoru/edit?html ,其中ng-form
已用於創建嵌套的表單元素並執行驗證。 由於每個輸入字段的name
屬性值都相同,因此如何在服務器端使用某種服務器端語言訪問所有三個變量的值? 假設它是PHP
, method
是post
。 通常在PHP
我會這樣做:
`$_POST['dynamic_input']`
但是如何使用$_POST
數組訪問來自輸入字段的三個字段值?
使用您提供的鏈接中的示例,可以通過使用以下內容更新代碼來訪問表單數據。
//將fields對象作為參數添加到submitForm()
<form name="signup_form" ng-controller="FormController" ng-submit="submitForm(fields)" novalidate>
//在$ scope.submitForm()函數中...
$scope.submitForm = function(data) {
alert(data[0].name); // Alerts name
alert(data[1].name); // Alerts password
alert(data[2].name); // Alerts email
};
如果注銷由SubmitForm()接收的數據,則會得到以下信息:
[{"placeholder":"Username","isRequired":true,"$$hashKey":"004","name":"random name"},{"placeholder":"Password","isRequired":true,"$$hashKey":"005","name":"password"},{"placeholder":"Email (optional)","isRequired":false,"$$hashKey":"006","name":"email@host.com"}]
要傳遞到服務器,請按原樣打包所有這些文件,或將其格式化為您的首選項,然后通過$ scope.submitForm函數內部的內置$http.post()
或$resource()
將其發送到服務器。
格式化數據的示例可以是:
$scope.submitForm = function(data) {
var postData = {};
postData.name = data[0].name;
postData.password = data[1].name;
postData.email = data[2].name;
... send postData to server via AJAX ...
// Creates the object: {"name":"random name","password":"password","email":"email@host.com"}
//alert(JSON.stringify(postData));
};
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.