首页 > 解决方案 > 什么是 asp.net 的 JQuery/Ajax GetData url

问题描述

尝试学习 asp.net,在一些示例中,我在尝试获取 SQL 表数据时看到了这个“GetData”url。有人可以解释这个 url 的来源以及这些例子是如何得到这个 url 的吗?这是在一个 asp.net 项目中。

<script type="text/javascript">  
            $(document).ready(function () {  
                $('#dataTable').DataTable({  
                    "ajax": {  
                        "url": "/Home/GetData",  
                        "type": "GET",  
                        "datatype": "json"  
                    },  
                    "columns": [  
                        { "data": "Name" },  
                        { "data": "Position" },  
                        { "data": "Office" },  
                        { "data": "Age" },  
                        { "data": "Salary" }  
                    ]  
                });  
            });           
        </script>

标签: jqueryasp.netajax

解决方案


这个 url 来自 ASP .NET 控制器,在 HomeController 中创建了 JsonResult 函数,该函数使用 GET 方法返回 Json 信息,还有更好的方法来使用 JQuery/Ajax GetData

$.ajax({
  url: '/Home/GetData',
  method: 'GET',
  data: {
    'Id': id
  },
  success: function(response) {
    $('#dataTable').html(`
        <table>
        <thead>
        <tr><th>Name</th></tr><tr><th>Position</th></tr><tr><th>Office</th></tr>
        <tr><th>Age</th></tr><tr><th>Salary</th></tr>
        </thead>
        <tbody>
        <tr><th>${response.Name}</th></tr><tr><th>${response.Position}</th></tr><tr><th>${response.Office}</th></tr>
        <tr><th>${response.Age}</th></tr><tr><th>${response.Salary}</th></tr>
        </tbody>
        </table>
        `);
  }
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

我使用了 data: {'Id': id} 因为当它向后端发送请求时,它需要一个人的 ID,它应该返回特殊数据。

你的后端 GetData 方法看起来如此

public JsonResult GetData(int id) {
  person personIndfo = db.persons.Where(x => x.Id == id).First();


  return Json(personIndfo, JsonRequestBehavior.AllowGet);
}

person 是一个类,我创建了一个带有 personInfo 名称的空类 person,我从数据库中插入了一个 Id 等于 Id 的人员信息,并将其发送回。

因此,如果存在这样的人,它将在“成功:函数(响应)”上成功返回 Ajax。


推荐阅读