在网格

时间:2017-01-12 06:24:30

标签: html angularjs angular-ui-grid

单击保存按钮时,我试图显示网格中文本框和按钮的值。我写了html部分,我自己尝试了一些东西。单击保存按钮时,值不会显示在表格中。

<!DOCTYPE html>
<html>
<head>
    <title>Header Details</title>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
    <link href="font.css" rel="stylesheet" />
</head>

<body>

    <div class="container" ng-app="myApp" ng-controller="clear">
        <h2 style="text-align: center"><b>Header Details</b></h2>

        <div class="panel-group" id="accordion">
            <div class="panel panel-default">
                <!--<div class="panel-heading">
                    <h4 class="panel-title" style="text-align: center">


                        <a>Add the Headers </a>
                    </h4>
                </div>-->

                <div class="panel-body">

                    <div class="row">

                        <div class="input-group">
                            <h1>&nbsp; <b>Enter the Header:</b>&nbsp;
                            <input type="text" name="Header" ng-model="header"><br></h1>
                        </div>


                    </div>
                    <p>

                    </p>

                        <div class="row">

                            <div class="input-group">
                                <h1>
                                    &nbsp;  <b>Status:</b>&nbsp;
                                    <select name="status" id="status" ng-model="status">
                                        <option value="" selected="selected">(Select the status)</option>
                                        <option value="001">0</option>
                                        <option value="002">1</option>

                                    </select>
                                </h1>
                            </div>

                        </div>

                        <div class="pull-right">

                            <button type="submit" class="btn btn-primary" ng-click="Save()">Save</button>

                            <button type="clear" class="btn btn-default" ng-click="clear()">Clear</button>

                        </div>




                    </div>
            </div>

        </div>
    </div>

    <div ng-app="myApp" ng-controller="headerCtrl">

        <table class="table table-bordered" ;style="width:40%;margin-left:400px">
            <tr>
                <th>Header</th>
                <th>Status</th>

            </tr>
            <tr ng-repeat="data in headerData.Result">
                <td>{{data.Header}}</td>
                <td>{{data.Status}}</td>

            </tr>


        </table>


    </div>

    <script>
        var app = angular.module('myApp', []);
        app.controller('headerCtrl', function ($scope) {
            $scope.Save = function () {
                $scope.headerData = {
                    Result: [{
                        "Header": $scope.header, "Status": $scope.status,

                    },
                     ]
                }
            };
        });
    </script>

</body>
</html>

2 个答案:

答案 0 :(得分:2)

问题很少,

(i)两个div只有一个ng-app和ng-controller共同

(ii)您的代码没有角度参考

(iii)您需要在保存功能

上将值推送到数组
 $scope.headerData.Result.push({
       "Header": $scope.header,
       "Status": $scope.status
     });

<强>样本

var app = angular.module('myApp', []);
 app.controller('headerCtrl', function($scope) {
   $scope.headerData = {};
   $scope.headerData.Result = [];
   $scope.clear = function(){
      $scope.headerData.Result = [];
   }
   $scope.Save = function() {
     $scope.headerData.Result.push({
       "Header": $scope.header,
       "Status": $scope.status

     });

   };
 });
<!DOCTYPE html>
<html>

<head>
  <title>Header Details</title>
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.7/angular.min.js"></script>

  <link href="font.css" rel="stylesheet" />
  <script src="script.js"></script>
</head>

<body>

  <div class="container" ng-app="myApp" ng-controller="headerCtrl">
    <h2 style="text-align: center"><b>Header Details</b></h2>

    <div class="panel-group" id="accordion">
      <div class="panel panel-default">
        <!--<div class="panel-heading">
                    <h4 class="panel-title" style="text-align: center">


                        <a>Add the Headers </a>
                    </h4>
                </div>-->

        <div class="panel-body">

          <div class="row">

            <div class="input-group">
              <h1>&nbsp; <b>Enter the Header:</b>&nbsp;
                            <input type="text" name="Header" ng-model="header"><br></h1>
            </div>


          </div>
          <p>

          </p>

          <div class="row">

            <div class="input-group">
              <h1>
                                    &nbsp;  <b>Status:</b>&nbsp;
                                    <select name="status" id="status" ng-model="status">
                                        <option value="" selected="selected">(Select the status)</option>
                                        <option value="001">0</option>
                                        <option value="002">1</option>

                                    </select>
                                </h1>
            </div>

          </div>

          <div class="pull-right">

            <button type="submit" class="btn btn-primary" ng-click="Save()">Save</button>

            <button type="clear" class="btn btn-default" ng-click="clear()">Clear</button>

          </div>






        </div>
      </div>




      <table class="table table-bordered" ;style="width:40%;margin-left:400px">
        <tr>
          <th>Header</th>
          <th>Status</th>

        </tr>
        <tr ng-repeat="data in headerData.Result">
          <td>{{data.Header}}</td>
          <td>{{data.Status}}</td>

        </tr>


      </table>

答案 1 :(得分:-1)

您的代码中存在许多问题。

没有Angular文件。请根据您的版本添加角度文件。 您已经定义了两个控制器中的一个,清除,未定义。 你已经在两个地方宣布了ng-app =“myApp”,这是一个非常糟糕的做法。 您在范围内使用没有引号的结果。它是一个json对象,很适合使用键值的引号。

我已经纠正了所有错误,以下是您的最终代码。在复制之前,请完成更改并理解它们。

<div class="container" ng-app="myApp" ng-controller="headerCtrl">
        <h2 style="text-align: center"><b>Header Details</b></h2>

        <div class="panel-group" id="accordion">
            <div class="panel panel-default">
                <!--<div class="panel-heading">
                    <h4 class="panel-title" style="text-align: center">


                        <a>Add the Headers </a>
                    </h4>
                </div>-->

                <div class="panel-body">

                    <div class="row">

                        <div class="input-group">
                            <h1>&nbsp; <b>Enter the Header:</b>&nbsp;
                            <input type="text" name="Header" ng-model="header"><br></h1>
                        </div>


                    </div>
                    <p>

                    </p>

                        <div class="row">

                            <div class="input-group">
                                <h1>
                                    &nbsp;  <b>Status:</b>&nbsp;
                                    <select name="status" id="status" ng-model="status">
                                        <option value="" selected="selected">(Select the status)</option>
                                        <option value="001">0</option>
                                        <option value="002">1</option>

                                    </select>
                                </h1>
                            </div>

                        </div>

                        <div class="pull-right">

                            <button type="submit" class="btn btn-primary" ng-click="Save()">Save</button>

                            <button type="clear" class="btn btn-default" ng-click="clear()">Clear</button>

                        </div>




                    </div>
            </div>

        </div>

    <div>

        <table class="table table-bordered" ;style="width:40%;margin-left:400px">
            <tr>
                <th>Header</th>
                <th>Status</th>

            </tr>
            <tr ng-repeat="data in headerData.Result">
                <td>{{data.Header}}</td>
                <td>{{data.Status}}</td>

            </tr>


        </table>


    </div>

    </div>
    <script>
        var app = angular.module('myApp', []);
        app.controller('headerCtrl', function ($scope) {
            $scope.Save = function () {
                $scope.headerData = {
                    "Result": [{
                        "Header": $scope.header, "Status": $scope.status,

                    },
                     ]
                }
            };
            $scope.clear = function(){
                $scope.headerData = {};
                $scope.header = "";
                $scope.status = "";
            }
        });

    </script>