gpt4 book ai didi

c# - 如何在 MVC 的@Html.ActionLink 中获取文本框更改值以更新

转载 作者:太空宇宙 更新时间:2023-11-03 11:14:51 25 4
gpt4 key购买 nike

我正在尝试从文本框中获取 textchanged 值以在我的 Controller 中更新。
查看

  @Html.TextBox("Quantity", item.Quantity)

<a href="@Url.Action("Update", "Shopping", new { id = Request.QueryString["UserID"], productid = item.ProductID, qty ="Quantity", unitrate = item.Rate })">
<img alt="updateitem" style="vertical-align: middle;" height="17px" src="~/Images/product_updates_image.png"
title="update" id="imgUpdate" />
</a>

在我的 Controller 中更新

 public ActionResult Update(string id, string productid, int qty, decimal unitrate)
{
if (ModelState.IsValid)
{
int _records = UpdatePrice(id,productid,qty,unitrate);
if (_records > 0)
{
return RedirectToAction("Index1", "Shopping");
}
else
{
ModelState.AddModelError("","Can Not Update");
}
}
return View("Index1");
}

更新函数

public int UpdatePrice(string id,string productid, int qty, decimal unitrate)
{
con.Open();
var total = qty * unitrate;
SqlCommand cmd = new SqlCommand("Update [Cpecial_Shopping_Cart_tbl] Set Price='"+ total +"' where [User ID]='" + id + "' and [Product ID]='" + productid + "'", con);
cmd.Parameters.AddWithValue("@total", total);
return cmd.ExecuteNonQuery();
}

我在 @Html.ActionLink 中为数量变量传递了文本框名称。但是当文本框的值发生变化时,值并没有传递进去。

编辑:

最初来自 DB 的文本框的值为 1。当我更改文本框值时,它没有得到更新,即使在发布表单时也会更新相同的值。

最佳答案

您需要使用表单将 View 中的值发送 (POST) 到 Controller 中。

这是一个粗略的例子:

@using (Html.BeginForm("Update", "Shopping", FormMethod.Post, new { @id = "myHtmlForm" }))
{
@Html.Hidden("id", Request.QueryString["UserID"]);
@Html.Hidden("productid", item.ProductID)
@Html.Hidden("unitrate", item.Rate)

@Html.TextBox("qty", item.Quantity)

<a href="javascript:document.getElementById('myHtmlForm').submit();">
<img alt="updateitem" style="vertical-align: middle;" height="17px" src="~/Images/product_updates_image.png"
title="update" id="imgUpdate" />
</a>
}

关于c# - 如何在 MVC 的@Html.ActionLink 中获取文本框更改值以更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12952439/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com