2010-09-30 54 views
0

我正在嘗試使用javascript創建自定義消息框,但沒有太多。在asp.net(javascript)中創建自定義的「是/否」提醒框 - 第2部分

string txtConfirmMessage = "On " + DateTime.Now + ", "; 
    txtConfirmMessage = txtConfirmMessage + sUserID; 
    txtConfirmMessage = txtConfirmMessage + " added this record. Do you want to continue? "; 
    btnSubmit.OnClientClick = @"return confirm('" + txtConfirmMessage + "' Do you want to continue);"; 

我需要顯示涉及用戶ID,日期和用戶的價值的自定義消息。當我點擊提交按鈕時,消息框不會彈出。

更新:
我知道這個代碼是在Page_Load事件中執行的。但是,是否可以在此警報框中顯示用戶選擇的值(該操作在頁面加載事件之後發生)?

任何想法來解決這個問題?

回答

2

您擁有的JavaScript無效,因爲「確認」方法只能提供一個參數,但您要給它兩位。

試試這個修改後的版本。

string messageFormat = "On {0}, {1} added this record. Do you want to continue?"; 
string formattedMessage = string.format(messageFormat, DateTime.Now, sUserID); 
btnSubmit.OnClientClick = "return confirm('" + formattedMessage + "');"; 
+0

我知道這個代碼是在Page_Load事件中執行的。但是,是否可以在此警報框中顯示用戶選擇的值(該操作在頁面加載事件之後發生)? – user279521 2010-09-30 17:05:40

+0

您可以使用隱藏字段並使用javascript檢索該值 – citronas 2010-09-30 17:38:40

2

你只需要你傳遞給confirm()一前一後的額外字符串,它改成這樣:

btnSubmit.OnClientClick = @"return confirm('" + txtConfirmMessage + "');"; 
1

關於這個問題的更新,你可以一個的OnClientClick事件處理程序分配給該按鈕的時間晚於PreRender,該值將保留在ViewState中。