[英]How to show a pop-up dialog through ASP.NET and get the value of the pop up back
[英]How to add a pop up dialog?
我写的是,每当“ api_login为空”时,如何创建一个弹出对话框。 我也想知道,如何将url链接也放到弹出框中。
public api_login Getapi_login(string id)
{
api_login api_login = db.api_login.Find(id);
if (api_login == null)
{
throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound));
//Response.Write("<script>alert('Your alert box')</script>");
}
return api_login;
}
非常感谢
您可以使用JQuery弹出窗口来实现
您需要根据客户端上的Javascript代码生成警报。 以下内容利用jQuery的AJAX函数:
$.ajax( {
url: "/YourUrl",
data: { id = yourIdVariable }
})
.done(function(jqXHR) {
alert( "success" );
})
.fail(function(jqXHR) {
alert( "Error with status code" + jqXHR.status );
})
.always(function(jqXHR) {
alert( "complete" );
});
我们在Controller方法上使用一个名为“ CustomExceptionHandler”的属性(例如)。 在其中,我们获取了所需的描述,并将其传递给Response.StatusDescription属性。 响应返回到调用页面后,我们会有一个小js读取状态描述并输出到任何地方(例如,在警报中)。 看起来像这样:
样本动作
[CustomExceptionHandler]
public ActionResult Save(SomeViewModel viewModel)
{
//do stuff
}
CustomExceptionHandler类
public class CustomExceptionHandler : HandleErrorAttribute
{
public override void OnException(ExceptionContext filterContext)
{
handleException(filterContext);
}
private void handleException(ExceptionContext filterContext)
{
filterContext.HttpContext.Response.StatusCode = 500;
filterContext.HttpContext.Response.StatusDescription = HttpUtility.UrlEncode(filterContext.Exception.Message);
filterContext.ExceptionHandled = true;
filterContext.HttpContext.Response.Clear();
filterContext.HttpContext.Response.End();
}
}
Javascript(例如,使用ajax调用)
function onFormFailure(context) {
alert(context.statusText);
}
我们喜欢的是,异常消息与显示是分开的。 因此,如果我们想以警报,模式或内联方式显示消息,则可以独立更改它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.