![](/img/trans.png)
[英]Storing documents in database ASP.NET MVC5 with EF6 - code-first
[英]Change Button on-click only if data is successfully stored to database without postback asp.net mvc5 EF6
我有一種情況,我必須將按鈕“發送請求”更改為“請求已發送”。 我的表單中有n個這樣的按鈕,我需要更改所有按鈕
僅當數據成功存儲到數據庫中而不重新加載表單時,該按鈕才應更改。 這就是我將數據存儲到數據庫的方式。
public ActionResult SendRequest(string RequestId)
{
MyRequest request = new MyRequest();
request.UserId = loggedInUserId;
request.FutureFriendId = RequestId;
request.Status = RequestStatus.Pending;
db.MyRequests.Add(request);
db.SaveChanges();
return View();
}
稍后我可能想將按鈕“已發送的請求”更改為“取消請求”以回滾操作。 請給我一個解決方案。 謝謝!
我會從ActionResult返回布爾值。 您的JS(Jquery)代碼應如下所示:
$(btn).click(function(){
$(btn).attr("disabled", "disabled").val("Sending Request...");
$.ajax({
url: '/yoururl',
type: 'GET',
data: { RequestId: '12345' },
async: true,
success: function(returnParameters) {
$(btn).attr("disabled", "disabled").val("Request Sent");
},
error: function(jqXHR, textStatus, errorThrown) {
$(btn).removeAttr("disabled").val("Send Request"); // error, reset.
}
});
});
這將為按鈕提供三種情況:
我還將按鈕設置為“已禁用”,以防止在進行中/發送請求時獲得更多點擊。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.