AngularJS:$ http.post使用textarea多个值?

时间:2017-08-01 17:08:44

标签: html angularjs textarea

我有一个应用程序,它使用web api,sql表值然后显示在html页面中,将用户输入文本的值发布到sql server表。我想使用textarea来保存多个值到目前为止这样做(将它们连接成一个替换换行符和空格):

html

控制器:

  $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'>

1 个答案:

答案 0 :(得分:0)

理想的解决方案是进行一次Web服务调用并将多个订户保存在一起。

使用.split功能分割输入文字,如下所示。

this.saveSubscriber = function (sub) {
    return $http({
        method: 'post',
        data: sub.split('\n'),
        url: 'api/Subscriber'
    });

注意:为此,Web服务必须支持字符串数组作为输入。