gpt4 book ai didi

javascript - 如何在ASP MVC中使用sweet Alert确认用户数据的编辑

转载 作者:行者123 更新时间:2023-11-28 03:49:19 25 4
gpt4 key购买 nike

我正在通过 SQL Server 使用存储过程开发 ASP MVC Web 应用程序。

我正在尝试建立确认警报(Sweet Alert),以确认已登录用户的数据更新。

编辑的代码无需确认即可完美运行。但是一旦添加了确认警报,我就面临着通过 javascript 函数将用户(客户端)的参数从 View 传递到 Controller 的问题。

我尝试将孔模型作为 onClick() 内的参数传递,但出现 JavaScript 错误:

Uncaught ReferenceError: Delivery is not defined at HTMLInputElement.onclick

这是我的 View 代码的一部分(编辑页面):

     <input type="button" value="Save" class="btn btn-default" onclick="Update(@Model.ClientId)">

<script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script>
<script type="text/javascript">
function Update(clientId) {
swal({
title: "Are you sure?",
text: "Once modified, you will not be able to recover your profile!",
icon: "warning",
buttons: true,
dangerMode: true,
})
.then((willDelete) => {
if (willDelete) {
$.ajax({
type: "POST",
data: {
id: clientId
},
url: "/Client/Edit",
dataType: "json",
success: function (response) {
swal("Poof! Your profile has been modified!", {
icon: "success",
}).then(function () {
window.location.href = "/Home/Index"
});

},
failure: function (response) {
alert(response.responseText);
},
error: function (response) {
alert(response.responseText);
}
});

}
else {
swal("Your profil is safe!");
}
});
}
</script>

Controller (ClientController):

 [HttpPost]
public JsonResult Edit(int id, Client cmodel)
{
try
{

ClientManagement cdb = new ClientManagement();
if (cdb.UpdateDetails(cmodel))
{
TempData["Message"] = "Client Details Edited Successfully";
}

return Json("edited");
}
catch
{
return Json("Error");
}
}

ClientManagement 类:

  public bool UpdateDetails(Client cmodel)
{
try
{
connection();
SqlCommand cmd = new SqlCommand("UpdateClientsInfo", con);
cmd.CommandType = CommandType.StoredProcedure;

cmd.Parameters.AddWithValue("@CltId", cmodel.ClientId);
cmd.Parameters.AddWithValue("@FirstName", cmodel.FirstName);
cmd.Parameters.AddWithValue("@LastName", cmodel.LastName);
cmd.Parameters.AddWithValue("@Email", cmodel.Email);
cmd.Parameters.AddWithValue("@Phone", cmodel.Phone);
cmd.Parameters.AddWithValue("@Address", cmodel.Address);
cmd.Parameters.AddWithValue("@Password", cmodel.Password);

con.Open();
int i = cmd.ExecuteNonQuery();
con.Close();

if (i >= 1)
return true;
else
return false;
}

catch (SqlException sqlexc)
{
foreach (SqlError error in sqlexc.Errors)
{
string msg = string.Format("{0}: {1}", error.Number, error.Message);
}
return false;
}
}

调试时,客户端的所有值(ClientId、LastName...)均为Null

最佳答案

您必须需要在 '(单引号)中传递参数。

<input type="button" value="Save" class="btn btn-default" onclick="Update('@Model.ClientId')">

关于javascript - 如何在ASP MVC中使用sweet Alert确认用户数据的编辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48165426/

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