【发布时间】:2020-07-29 23:37:45
【问题描述】:
我正在向存储过程发送参数,存储过程返回一条消息,要么成功,要么出错。
public IActionResult Index() => View();
public async Task<IActionResult> Upload(IFormFile file)
{
int cmdResponse = Convert.ToInt32(cmd.Parameters["@response"].Value);
string cmdMessage = cmd.Parameters["@message"].Value.ToString();
if (cmdResponse == 0)
{
con.Close();
return RedirectToAction("Index", Json(new { status = "error", message = cmdMessage }));
}
return RedirectToAction("Index", Json(new { status = "success", message = cmdMessage }));
}
这是使用 Javascript 的视图,我尝试在警报框中显示来自存储过程的消息。
<script>
$(function () {
$("#btn").click(function () {
dangerResponseMessage('btn');
});
});
function dangerResponseMessage(result) {
var url = window.rootUrl + 'Upload/Upload';
$.ajax({
type: "GET",
url: url,
dataType: 'json',
success: function (result) {
alert(result.message);
},
error: function (xhr, ajaxOptions, thrownError) {
alert(result.message);
}
});
}
</script>
当我解除警报时,它会从浏览器中 URL 中的存储过程返回消息。
URL 中的西里尔字母是我试图在警告框中显示的消息。 ajax 调用没有数据,因为我不需要从视图向控制器发送任何内容。 关于为什么它在 URL 中而不是在警报框中显示消息的任何想法?
【问题讨论】:
标签: javascript c# asp.net-mvc alert