【问题标题】:How to push entered text in field input and textarea to json angular如何将字段输入和文本区域中输入的文本推送到 json angular
【发布时间】:2017-03-29 16:22:19
【问题描述】:

当有人点击按钮时,如何使用 Angular 放置 cmets。每次如果我在字段输入和文本区域中输入一些文本,文本就会消失。将显示一个空块,没有任何名称、国家和 cmets。输入的文本必须在现有 json 之后推送。

angular.module("forum-page", ["myApp"])
	.controller("Forum", function($scope) {
		$scope.comments = [
			{
			"name": "Kevin", 
			"comment": "Wat een mooi toestel vandaag ontvangen, zeer blij met mijn bestelling :)", 
			"country": "Nederland"
			}, 
		];

	$scope.addComment = function() {
		$scope.comments.push({"name": $scope.name, "comment": $scope.comment, "country": $scope.country});

		$scope.dataObject = {
			name: $scope.name, 
			comment: $scope.comment, 
			country: $scope.country
		}; 
		
		$scope.name = "";
		$scope.comment = "";
		$scope.country = "";
	};
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<tr>
<tr><input type="text" id="comment-name" class="comment-form" ng-model="dataObject.name"/></tr>
<tr><input type="text" id="comment-country" class="comment-form" ng-model="dataObject.country"/></tr>
<tr><textarea type="text" id="comment-box" class="comment-form" ng-model="dataObject.comment"/></textarea></tr>
<tr><button ng-click="addComment()">Place comment</button></tr>
</tr>

【问题讨论】:

    标签: html angularjs json


    【解决方案1】:

    将 dataObject 推送到 cmets 数组并使用空字段创建新的 dataObject:

    <table ng-app="forum-page" ng-controller="Forum">
    <tr ng-repeat="comment in comments">
        <td>{{comment.name}}</td>
        <td>{{comment.comment}}</td>
        <td>{{comment.country}}</td>
        <td></td>
    </tr>
    
    <tr>
        <td><input type="text" id="comment-name" class="comment-form" ng-model="dataObject.name"/></td>
        <td><input type="text" id="comment-country" class="comment-form" ng-model="dataObject.country"/></td>
        <td><textarea type="text" id="comment-box" class="comment-form" ng-model="dataObject.comment"/></textarea></td>
        <td><button ng-click="addComment()">Place comment</button></td>
    </tr>
    </table>
    
    
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
    <script>
    angular.module("forum-page", [])
    .controller("Forum", function($scope) {
      $scope.comments = [
        {
          "name": "Kevin", 
          "comment": "Wat een mooi toestel vandaag ontvangen, zeer blij met mijn bestelling :)", 
          "country": "Nederland"
        }, 
      ];
    
      $scope.addComment = function() {
        $scope.comments.push($scope.dataObject);
    
        $scope.dataObject = {
          name: '', 
          comment: '', 
          country: ''
        }; 
      };
    });
    </script>

    【讨论】:

    • 谢谢各位,没想到这个答案这么简单。英雄!
    猜你喜欢
    • 2021-02-25
    • 1970-01-01
    • 2020-05-18
    • 2018-03-05
    • 1970-01-01
    • 2011-04-11
    • 2015-06-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多