【问题标题】:How to update data from database by clicking button with angularjs如何通过单击带有 angularjs 的按钮来更新数据库中的数据
【发布时间】:2016-03-18 07:23:24
【问题描述】:

我是 Angular 新手,所以遇到了问题。我的迷你项目的主要思想是我必须显示数据库中的数据。通过调用 api 和对数据库的请求,所有内容都应该显示在视图中。现在显示当前数据正在工作。现在我想通过单击按钮来更新数据库中的数据,但不幸的是我没有在我的控制器中编写什么样的函数。 这是我的 DataGridView.js

var app = angular.module('myApp', ['ngResource']);
app.controller('myCtrl', function ($scope, $resource, $http, $routeParams, $location) {

    var Users = $resource('/api/tables');
    $scope.users = Users.query(function () {
        //console.log(user);
    });
});

这是我的(API)Tables1Controller.cs,只有主要方法

public string GetTables()
        {
            JavaScriptSerializer jss = new JavaScriptSerializer();
            return jss.Serialize(db.Tables);
        } 

这是我显示数据的索引,我添加了按钮

<table class="table">
    <thead>
        <tr>
            <th>Id</th>
            <th>Name</th>
            <th>Surname</th>
            <th>Address</th>
        </tr>
    </thead>
    <tbody>
        <tr ng-repeat="user in users">
            <td>{{user.Id}}</td>
            <td>{{user.Name}}</td>
            <td>{{user.Surename}}</td>
            <td>{{user.Address}}</td>
        </tr>
    </tbody>
</table>

<div ng-repeat=>
    {{ user.Name }}
    a
</div>
<div class="btn btn-danger">Button</div>

在 _Layout.cshtml 中,我在正文中添加了 ng-app 和 ng-controller。最好的解决方案是什么?

编辑:我知道它应该用 ng-click near 按钮开始,但我不知道如何编写函数来更新。

【问题讨论】:

    标签: javascript asp.net angularjs api datagridview


    【解决方案1】:

    看起来您正在使用带有 Angular 的 ASP.Net MVC。在这种情况下,“控制器”令人困惑,因为它在 MVC 和 Angular 中的含义不同。

    回到你的问题,你需要两件事

    1. Angular:当用户单击按钮时,使用 $http.post 发送数据。 $http.post 的 URL 应该与 #2 的路由匹配。
    2. MVC 控制器:添加 HttpPost 控制器以接收来自浏览器的数据。并运行 insert 命令将数据保存在您的存储中。

    【讨论】:

      【解决方案2】:

      解决了!

      在我添加的js文件中:

      $scope.update = (function () {
              var Users = $resource('/api/tables');
              $scope.users = Users.query(function () {
              });
          });
      

      在html文件中我做了这样的按钮:

      <div class="btn btn-danger" ng-click="update()">Refresh</div>
      

      【讨论】:

        【解决方案3】:

        此外,您还可以阅读有关 ngResource 的信息,例如这里http://www.sitepoint.com/creating-crud-app-minutes-angulars-resource/

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2023-04-04
          • 1970-01-01
          • 2014-01-17
          • 2019-08-21
          • 1970-01-01
          • 1970-01-01
          • 2014-12-10
          • 2016-06-11
          相关资源
          最近更新 更多