データベースに値を挿入している1つのコントローラーを使用しています。値がデータベースに正常に挿入されたときに、コントローラーからのアラートメッセージを表示したい。出来ますか。はいの場合、どのように?
基本的に、挿入が成功したかどうかを通知するメソッドが必要になるため、データベースに値を挿入する方法によって異なります。今それを行うにはいくつかの方法があるので、linq/entityframework/sql/etc。
次に、挿入が行われたかどうかがわかったら、変数に値を割り当て、コード/ aspxから値を確認して簡単なアラートを実行できます。
<script type="text/javascript">
//i'm using jquery ready event which will call the javascript chunk after the page has completed loading
$(document).ready(function(){
//assuming that your variable name from the code behind is bInsertSuccess
var bSuccess = "<%= bInsertSuccess %>";
if(bSuccess){
alert("Successfully Inserted");
}
});
</script>
結果をViewDataに追加できます。例えば:
if (SaveToDbOK)
{
ViewData["Success"] = "Data was saved successfully.";
// Do other things or return view
}
あなたの見解では、どこにでも配置できます:
MVC2:
<%if(ViewData ["Success"]!= null){%> <div id = "successMessage"> <%:ViewData ["Success"]% > </ div> <%}%>
MVC3:
@ if(ViewData ["Success"]!= null){ <div id = "successMessage"> @ ViewData ["Success"] < /div> @}
サーバーから返される情報を目立たなくするために、前回のプロジェクトでこのアプローチを使用しました。マスターページでViewData ["Success"]またはViewData ["Failure"]が実行されているかどうかを確認し、divはCSSを使用してフォーマットされ、jQueryコードを使用して5秒後に通知を非表示にしました。
よろしく、
ハスケ
public ActionResult UploadPropertyImage()
{
// Business logic....
return Content("<script language='javascript' type='text/javascript'>alert('Save Successfully');</script>");
}
以下のコードを追加して、ユーザーに通知することができます
Return Content("Data added successfully");