我需要從用戶獲得約14種不同的輸入值,以創建一個產品和輸入不應在控制器null
收到NG-模型,而不應該去爲空字符串空文本,而不是空設置在AngularJS
爲了實現這一目標,下面是我所做的: 控制器:
var NewProductCatalog = {
CustomerGuid: '00000000-0000-0000-0000-000000000000', SalesPartNo: "", Description: "",
Name: "", Inventory: 0, UnitPrice: 0, BrandNo: "", TypeNo: "", LobNo: "", BrandName: "",
TypeName: "", LobName: "", ManufacturePartNo: "", InventoryPartNo: "", EANCode: "",
ImageURL: "", ProductType: "", DateAdded: "", Active: false, Tax: 0
};
$scope.newProductCatalog = NewProductCatalog;
.cshtml:
<label for="SalesPartNo">Sales Part No *</label>
<input type="text" required name="SalesPartNo" ng-model="newProductCatalog.SalesPartNo" class="form-control" />
...
<input type="submit" ng-click="createProductCatalog(newProductCatalog)" />
創建功能(控制器):
$scope.createProductCatalog = function (NewProductCatalog) {
var JsonString = angular.toJson(NewProductCatalog);
CustomProductsServices.ProductCatalog_create(JsonString, function (callback) {
if (callback.success) {
$window.alert(callback.message);
} else {
$window.alert(callback.message);
}
});
};
這讓我當用戶沒有輸入任何值,發送一個空字符串。
問題: 當我嘗試在文本框中輸入一個值,然後刪除/清空文本框並提交。 我不能看到SalesPartNo中所產生的JSON字符串
請指出的,如果我的做法是錯誤的錯誤提示我一個更好的方法,因爲angularjs沒有約束力從<input name="SalesPartNo" />
需要
@RandomUser你可以用你的輸入形式和驗證它,你發送給服務器之前,請看這裏http://jsbin.com/wuhipe/ 2/edit?console,輸出 – sylwester 2014-09-10 10:32:28
@RandomUser和? – sylwester 2014-09-10 10:40:20
@RandomUser請按照這個例子,你可以看到提交按鈕不發送,如果表單無效。 – sylwester 2014-09-10 10:45:46