AngularJS:$http.post 使用 textarea 的多个值?
Posted
技术标签:
【中文标题】AngularJS:$http.post 使用 textarea 的多个值?【英文标题】:AngularJS: $http.post multiple values using textarea? 【发布时间】:2018-01-08 16:17:52 【问题描述】:我有一个应用程序,它使用 web api 将用户输入文本的值发布到 sql server 表中,然后 sql 表值显示在 html 页面中。到目前为止,我想使用 textarea 来保存多个值(将它们连接成一个用空格替换的换行符):
控制器:
$scope.saveSubs = function ()
var sub =
// DisplayName: $scope.DisplayName
;
var saveSubs = APIService.saveSubscriber(sub);
saveSubs.then(function (d)
getAll();
, function (error)
console.log('Oops! Something went wrong while saving the data.');
);
;
邮政服务:
app.service("APIService", function ($http)
this.getSubs = function ()
var url = 'api/Subscriber';
return $http.get(url).then(function (response)
return response.data;
);
this.saveSubscriber = function (sub)
return $http(
method: 'post',
data: sub,
url: 'api/Subscriber'
);
);
HTML:
<div class="form-group">
<textarea name="txtDescEd" cols="60" rows="10" data-ng-model="mailid"></textarea>
</div>
<button type="button" class="btn btn-default" data-ng-click="saveSubs();">Submit</button>
<p id='target' style='white-space:pre'>
【问题讨论】:
期望是什么?是否要进行多个 Web 服务调用(每行一个)?或者您想使用输入作为数组进行一次 Web 服务调用? 任何一种方式都行 【参考方案1】:理想的解决方案是进行一次 Web 服务调用并将多个订阅者保存在一起。
使用.split
函数来拆分输入文本,如下所示。
this.saveSubscriber = function (sub)
return $http(
method: 'post',
data: sub.split('\n'),
url: 'api/Subscriber'
);
注意:为此,Web 服务必须支持字符串数组作为输入。
【讨论】:
以上是关于AngularJS:$http.post 使用 textarea 的多个值?的主要内容,如果未能解决你的问题,请参考以下文章
使用 AngularJS $http.post 登录 Spring Boot
AngularJS:$http.post 使用 textarea 的多个值?
困惑:AngularJS $http POST 响应返回索引文件的 HTML 内容