2012-11-22 82 views
1

我正在付款頁面上,我想顯示一個彈出窗口顯示您的付款正在處理的消息。所以現在我使用CustomValidator和Submit Button。當Args有效時我想顯示這個彈出窗口。我的代碼是。如何顯示從服務器端彈出div按鈕點擊

<asp:CustomValidator ID="CustomValidator1" runat="server" ErrorMessage="" OnServerValidate="CustomValidator1_ServerValidate" 
              EnableClientScript="true" ValidationGroup="Authorize"></asp:CustomValidator> 

<asp:Button ID="SubmitButton" runat="server" Text="Pay now" CausesValidation="true" CssClass="blue paynow" style="width:200px;" 
               ValidationGroup="Authorize" OnClick="SubmitButton_Click" OnClientClick="validate(ContentPlaceHolder1_chk_agree);" /> 
+0

你使用像的DevExpress或Telerik的外部控制庫,或者你使用jQueryUI的? –

回答

1

要顯示的驗證後,一個消息框,您可以執行以下操作:
添加以下JavaScript到您的<head>

<script language="javascript"> 
    function SubmitButton_ClientClick() 
    { 
     bool isValid = Page_ClientValidate("Authorize"); //triggers validation 
     if (isValid) 
     { 
      alert('Your payment is processing'); 
     } 

     return isValid; 
    } 
</script> 

然後,改變你的按鈕,像這樣:

<asp:Button ID="SubmitButton" runat="server" Text="Pay now" CausesValidation="true" 
      CssClass="blue paynow" style="width:200px;" 
      ValidationGroup="Authorize" OnClick="SubmitButton_Click" 
      OnClientClick="return SubmitButton_ClientClick();" /> 

一個更好的方法是使用彈出div - 這是一個非常基本的例子E:

添加這個地方你<body>

<div id="popup_box" style="height:300;width:300;position:absolute;top:150;left:350;border:3px solid red;background:#d8d8d8;display:none;"> 
    <h1>Payment is processing</h1> 
    <button id="popupBoxClose" onclick="document.getElementById("popup_box").style.display = 'none';">Close</button> 
</div> 

並修改SubmitButton_ClientClick這樣的:

function SubmitButton_ClientClick() 
{ 
    bool isValid = Page_ClientValidate("Authorize"); //triggers validation 
    if (isValid) 
    { 
     document.getElementById("popup_box").style.display = ''; 
    } 

    return isValid; 
} 
+0

alert..user必須在完成付款後手動關閉! – sajanyamaha

+0

@sajanyamaha我不知道你剛剛問了什麼/說... – Blachshma

+0

我的意思是這個警報框在支付過程完成後會自動關閉嗎? – sajanyamaha

1

一個更好的方法是去 「的UpdateProgress」。

將您的一個UpdatePanel內提交按鈕,裏面放上的UpdateProgress加載gif圖片這下方會顯示加載圖像時支付進度是怎麼回事,當支付完成後會自動關閉。

enter image description here加載....

<asp:UpdateProgress id="updateProgress" runat="server"> 
    <ProgressTemplate> 
      <asp:Image ID="imgUpdateProgress" runat="server" ImageUrl="~/images/loadingNew.gif" AlternateText="Loading ..." ToolTip="Loading ..."/> 
    </ProgressTemplate> 
</asp:UpdateProgress> 
+0

,但這個圖像顯示在每次點擊 –

+0

如果我離開所有字段,然後單擊提交然後需要字段驗證器顯示,但這個圖像也顯示,但我想要做的,如果所有的字段填充並點擊提交那麼這個圖像應該顯示。 –

+0

嘗試只在更新面板中放置您的按鈕。 – sajanyamaha

相關問題