2012-08-08 54 views
0

我想在asp.net Web應用程序中創建Javascript警報。但我無法創造這個。我發佈我的部分代碼是在這裏腳本管理器JavaScript警報沒有顯示。請幫我顯示JavaScript警告..C#web應用程序javascript代碼中的警報

if (noofday > totalday) 
{ 

    // I want to display the confirm message box in this section 

    ScriptManager.RegisterStartupScript(this, this.GetType(), "script", "return confirm('Are you sure you want to delete');", true); 
    if(true) 
    { 
     DataSet5TableAdapters.sp_inleaverequestTableAdapter TA = new DataSet5TableAdapters.sp_inleaverequestTableAdapter(); 
     TA.GetData(lbl_empcode.Text, lbl_empname.Text, lbl_dept.Text, txtfromdate.Text, txttodate.Text, Convert.ToString(noofday), ddlleavetype.SelectedItem.Text, Convert.ToString(totalday), txtreason.Text, ddlforward.SelectedItem.Text, " ", " ", " ", " ", lbl_date.Text); 

     Send_Email(lbl_empcode.Text, lbl_empname.Text, txtfromdate.Text, txttodate.Text, noofday, ddlleavetype.SelectedItem.Text, txtreason.Text); 
     clear(); 
     ScriptManager.RegisterStartupScript(this, this.GetType(), "temp", "<script language='javascript'>alert('Request sent successfully. Go and watch your status..');</script>", false); 
    } 
    else 
    { 
     //DO Something 
    } 
} 
else 
{ 
    DataSet5TableAdapters.sp_inleaverequestTableAdapter TA = new DataSet5TableAdapters.sp_inleaverequestTableAdapter(); 
    TA.GetData(lbl_empcode.Text, lbl_empname.Text, lbl_dept.Text, txtfromdate.Text, txttodate.Text, Convert.ToString(noofday), ddlleavetype.SelectedItem.Text, Convert.ToString(totalday), txtreason.Text, ddlforward.SelectedItem.Text, " ", " ", " ", " ", lbl_date.Text); 

    Send_Email(lbl_empcode.Text, lbl_empname.Text, txtfromdate.Text, txttodate.Text, noofday, ddlleavetype.SelectedItem.Text, txtreason.Text); 

    ScriptManager.RegisterStartupScript(this, this.GetType(), "temp", "<script language='javascript'>alert('Request sent successfully. Go and watch your status..');</script>", false); 
    clear(); 
} 
+0

看看這個, http://stackoverflow.com/questions/4779576/how-to-display-windows-form-messagebox-in-asp-net-web-application – SuganR 2012-08-08 13:57:32

+0

我需要在web應用程序中的消息框不在Windows應用程序.. – 2012-08-08 14:01:57

+0

回答爲你的問題是在這個鏈接,請看正確, http://stackoverflow.com/questions/4779576/how-to-display-windows-form-messagebox-in-asp-net- web應用程序 這僅適用於Web應用程序。 – SuganR 2012-08-08 14:05:42

回答

0

我建議你先試着弄清楚你所期望的代碼是否會返回到頁面。

有幾種方法可以做到這一點,最簡單的方法是在上面的代碼運行後在頁面上查看源代碼。如果您可以在頁面中找到該內容,您將知道內容正在返回到該頁面但未被執行。

如果在查看源代碼時沒有看到內容,則說明您有其他問題。任何一個控件都被傳遞給另一個頁面,或者它實際上並不會達到你期望的條件。

一旦你明白問題源於這兩件,你可以開始找到可能導致它的原因。

也有點顯而易見的是,您可能無法完全理解網絡的工作原理。鑑於這組代碼....

 ScriptManager.RegisterStartupScript(this, this.GetType(), "script", "return confirm('Are you sure you want to delete');", true); 
      if(true) 
      { 
       DataSet5TableAdapters.sp_inleaverequestTableAdapter TA = new DataSet5TableAdapters.sp_inleaverequestTableAdapter(); 
       TA.GetData(lbl_empcode.Text, lbl_empname.Text, lbl_dept.Text, txtfromdate.Text, txttodate.Text, Convert.ToString(noofday), ddlleavetype.SelectedItem.Text, Convert.ToString(totalday), txtreason.Text, ddlforward.SelectedItem.Text, " ", " ", " ", " ", lbl_date.Text); 

       Send_Email(lbl_empcode.Text, lbl_empname.Text, txtfromdate.Text, txttodate.Text, noofday, ddlleavetype.SelectedItem.Text, txtreason.Text); 
       clear(); 
       ScriptManager.RegisterStartupScript(this, this.GetType(), "temp", "<script language='javascript'>alert('Request sent successfully. Go and watch your status..');</script>", false); 
      } 

......看來你期待在服務器上的頁面停止執行,然後等待客戶端響應。這不是網頁生命週期的工作方式。服務器代碼將完全執行並將內容發送回客戶端。它不像一個Windows窗體或控制檯應用程序那樣是一個交互式過程(即使使用AJAX)。

-2

,我建議你向你Modal Pop擴展(Ajax工具),而不是使用MessageBox。因爲asp.net不包含MessageBox

+0

的知識或使用Java腳本警報 – user484458 2012-08-08 14:30:38

+0

他正在使用javascript警報。 – StingyJack 2012-08-09 16:17:51

0

AJAX問題最多,特別是如果你像我們一樣使用VS 2003。也許VS2008或更新版本的Dev Suite更好。所以我們切換到彈出窗口的模式對話框。它使用JavaScript完成。我們使用了一些較舊的開發站點上的subModal示例。迫不及待地擺脫VS2003和VB.Net。呸!

相關問題