[英]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.