无法从表单 return undefined [AngularJs] 中获取值
Can't get value from form return undefined [AngularJs]
我无法从 html 中的输入字段获取值。
这是我的 html:
<div class="form-group">
<label class="control-label col-sm-2" for="subject">Subject:</label>
<div class="col-sm-10">
<input class="form-control" id="idsubject" ng-model="subject" placeholder="Enter Subject">
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2" for="body">Body:</label>
<div class="col-sm-10">
<input class="form-control" id="idbody" ng-model="body" placeholder="Enter Body">
</div>
</div>
那么这是我的控制器插件:
// insert data
$scope.InsertData = function() {
var insert = {
subject: $scope.subject,
body: $scope.body
}
var promiseGet = GetAllEntryService.InsertData(insert);
GetAllEntry();
ClearModels();
promiseGet.then(function(pl) {
$scope.InsertData = pl.data
},
function(errorPl) {
console.log('Some Error in Getting Records.', errorPl);
});
}
但是这个return值post像http://localhost:51458/ServiceRequest.svc/InsertData?subject=undefined&body=undefined
我不知道为什么从输入字段中得不到值。
这是我的服务插页:
this.InsertData = function (ticket, request, category, subCategory, subject, body, assignto, status, fileName, fileContent, fileBinary, isActive, createdBy, aCNo) {
return $http.post("http://localhost:51458/ServiceRequest.svc/InsertData?"&subject=" + subject + "&body=" + body);
};
这是inspect元素开发者网输出的图片
请帮我看看我的代码中缺少什么
我可以看到几个问题,首先您将 InsertData 设置为函数,然后将其设置为数据。
然后您的服务采用单独的参数,但您已将一个对象传递给它:
this.InsertData = function (ticket, request, category, subCategory, subject, body, ...)
以及您的用法:
var insert = {
subject: $scope.subject,
body: $scope.body
}
var promiseGet = GetAllEntryService.InsertData(insert);
虽然你应该像这样使用它:
var promiseGet = GetAllEntryService.InsertData(/*ticket goes here*/, ... , $scope.subject, $scope.body, ...);
我无法从 html 中的输入字段获取值。
这是我的 html:
<div class="form-group">
<label class="control-label col-sm-2" for="subject">Subject:</label>
<div class="col-sm-10">
<input class="form-control" id="idsubject" ng-model="subject" placeholder="Enter Subject">
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2" for="body">Body:</label>
<div class="col-sm-10">
<input class="form-control" id="idbody" ng-model="body" placeholder="Enter Body">
</div>
</div>
那么这是我的控制器插件:
// insert data
$scope.InsertData = function() {
var insert = {
subject: $scope.subject,
body: $scope.body
}
var promiseGet = GetAllEntryService.InsertData(insert);
GetAllEntry();
ClearModels();
promiseGet.then(function(pl) {
$scope.InsertData = pl.data
},
function(errorPl) {
console.log('Some Error in Getting Records.', errorPl);
});
}
但是这个return值post像http://localhost:51458/ServiceRequest.svc/InsertData?subject=undefined&body=undefined
我不知道为什么从输入字段中得不到值。
这是我的服务插页:
this.InsertData = function (ticket, request, category, subCategory, subject, body, assignto, status, fileName, fileContent, fileBinary, isActive, createdBy, aCNo) {
return $http.post("http://localhost:51458/ServiceRequest.svc/InsertData?"&subject=" + subject + "&body=" + body);
};
这是inspect元素开发者网输出的图片
请帮我看看我的代码中缺少什么
我可以看到几个问题,首先您将 InsertData 设置为函数,然后将其设置为数据。
然后您的服务采用单独的参数,但您已将一个对象传递给它:
this.InsertData = function (ticket, request, category, subCategory, subject, body, ...)
以及您的用法:
var insert = {
subject: $scope.subject,
body: $scope.body
}
var promiseGet = GetAllEntryService.InsertData(insert);
虽然你应该像这样使用它:
var promiseGet = GetAllEntryService.InsertData(/*ticket goes here*/, ... , $scope.subject, $scope.body, ...);