C# 如何在WebGrid帮助器中编辑数据

C# 如何在WebGrid帮助器中编辑数据,c#,asp.net,.net,razor,C#,Asp.net,.net,Razor,我有一个装满了很多产品的WebGrid,我希望能够编辑web grid中每一行的数量,并在相应的textbox上引发textChanged事件时更新数据库中的Cart表 但这在WebGrid中是可能的吗?我没有发现任何可能的证据。我真的非常感谢任何帮助 可以将更改事件附加到文本框中 我按照如下方式设置网格: @grid.GetHtml( htmlAttributes: new { cellspacing = "2px", cellpadding = "2px" }, columns:

我有一个装满了很多产品的WebGrid,我希望能够编辑web grid中每一行的数量,并在相应的textbox上引发textChanged事件时更新数据库中的Cart表

但这在WebGrid中是可能的吗?我没有发现任何可能的证据。我真的非常感谢任何帮助


可以将更改事件附加到文本框中

我按照如下方式设置网格:

@grid.GetHtml(
   htmlAttributes: new { cellspacing = "2px", cellpadding = "2px" },
   columns: grid.Columns(
      grid.Column("Id"),
      grid.Column("Description"),
      grid.Column("PacketQuantity"),
      grid.Column("ThickCover", format: (item) => {
         var p = item.Value as MvcApplication1.Models.Product;
         return Html.TextBox("ThickCover", p.ThickCover, new { @class = "thickCoverInput", @data_value = p.Id });
          }),
      grid.Column("ThinCover", format: (item) => {
         var p = item.Value as MvcApplication1.Models.Product;
         return Html.TextBox("ThickCover", p.ThinCover);
      })
   )
)
然后,我使用以下脚本连接更改:

<script src="~/Scripts/jquery-1.7.1.js"></script>
<script>
   $(document).ready(function () {
      $('.thickCoverInput').change(function(event) {
         alert(event.currentTarget.attributes["data-value"].value);
         alert(event.currentTarget.value);
         // Here you can post data to an action to update your table
      });
   });
</script>

$(文档).ready(函数(){
$('.thickCoverInput').change(函数(事件){
警报(event.currentTarget.attributes[“数据值”].value);
警报(event.currentTarget.value);
//在这里,您可以将数据发布到操作以更新表
});
});
当我更改文本框中的值时,我能够得到两个警报。一个用于产品Id,另一个用于新值


希望这就是您要查找的内容。

可以将更改事件附加到文本框中

我按照如下方式设置网格:

@grid.GetHtml(
   htmlAttributes: new { cellspacing = "2px", cellpadding = "2px" },
   columns: grid.Columns(
      grid.Column("Id"),
      grid.Column("Description"),
      grid.Column("PacketQuantity"),
      grid.Column("ThickCover", format: (item) => {
         var p = item.Value as MvcApplication1.Models.Product;
         return Html.TextBox("ThickCover", p.ThickCover, new { @class = "thickCoverInput", @data_value = p.Id });
          }),
      grid.Column("ThinCover", format: (item) => {
         var p = item.Value as MvcApplication1.Models.Product;
         return Html.TextBox("ThickCover", p.ThinCover);
      })
   )
)
然后,我使用以下脚本连接更改:

<script src="~/Scripts/jquery-1.7.1.js"></script>
<script>
   $(document).ready(function () {
      $('.thickCoverInput').change(function(event) {
         alert(event.currentTarget.attributes["data-value"].value);
         alert(event.currentTarget.value);
         // Here you can post data to an action to update your table
      });
   });
</script>

$(文档).ready(函数(){
$('.thickCoverInput').change(函数(事件){
警报(event.currentTarget.attributes[“数据值”].value);
警报(event.currentTarget.value);
//在这里,您可以将数据发布到操作以更新表
});
});
当我更改文本框中的值时,我能够得到两个警报。一个用于产品Id,另一个用于新值

希望这就是你想要的