我想打開一個新的aspx頁面,當用戶按下使用該應用程序的用戶時。當前一個窗口保留在後臺時打開一個彈出窗口 - asp.net
直到現在我使用Response.Redirect
但現在我希望前一頁將保留在後臺,並且新彈出窗口將僅顯示錶格數據,無回發。
這有可能嗎? 謝謝。
我想打開一個新的aspx頁面,當用戶按下使用該應用程序的用戶時。當前一個窗口保留在後臺時打開一個彈出窗口 - asp.net
直到現在我使用Response.Redirect
但現在我希望前一頁將保留在後臺,並且新彈出窗口將僅顯示錶格數據,無回發。
這有可能嗎? 謝謝。
是否必須是按鈕?如果它只是一個鏈接,那麼你可以設置它的target
屬性在新窗口中打開URL(或標籤,取決於瀏覽器)。事情是這樣的:
<a href="popup.aspx" target="_blank">click here</a>
如果它必須是一個按鈕,然後就可以open the new window with JavaScript。
但是,服務器端代碼確實沒有辦法告訴瀏覽器打開一個新窗口。它最終都必須在客戶端進行翻譯,因爲瀏覽器是打開窗口的部分。
爲了更好的用戶體驗,您可能需要考慮使用諸如jQuery UI Dialog而不是彈出窗口。從用戶的角度來看,它不僅更好,而且我發現從開發的角度來看它更容易,因爲它可以讓您在頁面本身上保留一個頁面的彈出窗口,所以您不必擔心「現在重新面對。
本質上,您會在用戶點擊按鈕時向用戶顯示div
隱藏的彈出窗口的數據(無論是在頁面加載時還是通過AJAX進行調用時)。 jQuery UI插件只是很好地爲你設計風格,並處理模式和類似的東西。
查看Ajax Toolkit中的ModalPopupExtender。這將允許您在頁面上打開對話框而無需回傳,並且可以在後臺打開父頁面。
http://www.asp.net/ajaxlibrary/AjaxControlToolkitSampleSite/modalpopup/modalpopup.aspx
感謝您的回答。假設我使用href選項,我如何將用戶參數(例如用戶名和密碼)傳遞到新頁面? –
@OfirAN:你爲什麼需要?如果頁面在同一個Web應用程序中,那麼用戶仍然會使用同一個會話,對嗎?所以你會在服務器上跟蹤那個用戶是誰。如果用戶在此操作中進行身份驗證,那麼在執行任何重定向或類似操作之前,您需要在標準POST請求中處理身份驗證。 – David
首先,它必須是一個按鈕。其次,我想要的是當管理員用戶按下按鈕時,會出現一個包含表格數據的彈出窗口。現在我有3個按鈕,每個按鈕都應該顯示不同的表格。也許與jQuery UI對話應該更容易,是嗎? –