我有一个包含很多产品的 WebGrid,我希望能够在相应的文本框上引发 textChanged 事件时编辑 Web 网格中每一行的数量并更新数据库中的 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>
当我更改文本框中的值时,我能够得到两个警报。一个是产品的 ID,另一个是新值。
希望这就是你要找的。