[英]How to add dynamic javascript alert box in asp.net?
请帮助我。我是asp.net的新手。如何在asp.net网络表单中编写动态javascript? 我想做的是下面的代码。
以下代码是用c#编写的服务器端按钮单击事件。 请帮我 。
if(Email.send()){
//show javascript alert box
}else{
//show javascript alert box
}
创建您通过AJAX调用的网络方法,然后根据该函数的结果弹出JavaScript警报。
示例(在您的.aspx页中):
function doSomething() {
$.ajax({
type: "POST",
url: "Do_Something.aspx/DoSomething",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
alert(response);
}
});
在Do_Something.aspx.cs中:
[WebMethod]
public static string DoSomething()
{
if (Email.Send)
{
return "success";
}
return "not a success";
}
使用asp.net,所有服务器端代码都将在将Web页发送给最终用户之前运行,然后将该代码的结果注入HTML / Javascript。
另外,在将服务器端代码注入javascript时,您需要在字符串文字(引号)中进行操作。
因此,如果您使用的是javascript click handler:
if ("@Email.Send()") {
// stuff
} else {
// other stuff
}
Email.Send()命令将运行,该命令的结果将放置在HTML中。 如果您的Send函数返回了一个布尔值(假设是布尔值),则返回给最终用户的HTML将如下所示:
if ("true") {
// stuff
} else {
...
我假设这不是您想要的结果。 正确的方法是在click命令内通过AJAX触发服务器上的另一个命令,并将该AJAX命令的结果用于您的逻辑。 它看起来像这样:
function clickHandler() {
$.ajax({
type: "POST",
url: "UrlToYourServerSideAction",
data: {
WebParam1: "value",
WebParam2: "value"
},
success: function (response) {
if (response == "true") {
// code if Web Method returns true
} else {
// code if Web Method returns false
}
}
});
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.