C# 使用Ajax显示来自数据库表ID的递增计数

C# 使用Ajax显示来自数据库表ID的递增计数,c#,html,ajax,asp.net-mvc-5,controller,C#,Html,Ajax,Asp.net Mvc 5,Controller,我想从数据库表中获取最后一个ID,并按1递增,以显示在HTML的输入或标签参数中 大多数教程都在表格中显示它。这是我的密码: index.cshtml <td>Trans Id</td> <td><input id="tbTransID" type="text" /></td> <script> $(document).ready(function () { $.ajax({

我想从数据库表中获取最后一个ID,并按1递增,以显示在HTML的输入或标签参数中

大多数教程都在表格中显示它。这是我的密码:

index.cshtml

<td>Trans Id</td>
<td><input id="tbTransID" type="text" /></td>
<script>
$(document).ready(function () {
            $.ajax({
                type: "GET",
                url: "/CashAdvance/GetTransID",
                data: "{}",
                success: function (data) {
                    var s = data.TransID;                     
                    }$("#tbTransId").html(s);
                }
            });
        });
</script>

您需要在控制器中更改linq查询,如下所示:

public ActionResult GetTransID()
{
     AcctgContext db = new AcctgContext();
     return Json(db.CATransactions.OrderByDescending(i => i.TransID).Select(i=>new
     {
         TransID= x.TransID + 1
     }).FirstOrDefault(), JsonRequestBehavior.AllowGet);
}

在查询中,您选择的是值列表,而您只需要max id来增加它。

明白了。“网络”选项卡(检查元素)的结果返回了正确的参数。但是,它没有显示在输入参数上。我的剧本有什么遗漏吗?请告诉我我是否需要创建另一个问题。您在输入参数上是否有任何错误?我想您只需要使用var s=dataDone就可以了。我刚刚将html更改为val。现在可以了。
public ActionResult GetTransID()
{
     AcctgContext db = new AcctgContext();
     return Json(db.CATransactions.OrderByDescending(i => i.TransID).Select(i=>new
     {
         TransID= x.TransID + 1
     }).FirstOrDefault(), JsonRequestBehavior.AllowGet);
}