這聽起來很簡單,但我一直在努力。在後面的代碼中使用jQuery - 回調刷新頁面
我有一個asp.Net頁面和頁面後面的相應代碼。我的用戶輸入一個新的密碼,然後頁面後面的代碼檢查是否可以(足夠長,有一些正則表達式來檢查不允許的字符等)。如果密碼正常,後面的代碼將執行sql查詢來更新數據庫。
如果查詢成功,我想隱藏密碼輸入div並顯示password-successful-create div,這給了我的用戶進一步的指示。我一直使用jQuery在php中輕鬆完成此操作。
我的問題:我剛剛描述的工作都是在服務器端完成的。我可以使用ClientScriptManager(RegisterStartupScript)將相應的jQuery腳本發送回客戶端。細膩而華麗,但回到服務器的回調會刷新頁面,因此頁面會刷新並恢復爲原始外觀。如果仔細觀察,您可以看到div隱藏起來並以我想要的方式顯示,但在很短的時間內,它們會回到原來的樣子 - 我假設因爲回調會刷新頁面。
當正在執行對服務器的調用時,是否可以在頁面後面的代碼中顯示/隱藏DOM元素?任何幫助表示讚賞。
編輯
這是asp:按鈕控制本身,這是問題。我在下面的代碼中得到相同的行爲,它根本不使用頁面後面的代碼。如果我用普通的HTML輸入控件替換asp:按鈕控件,它可以正常工作。
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
<script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>
<script type="text/javascript">
$('document').ready(function() {
$('.MyButton').click(function() {
$('#MyTable').toggle();
})
})
</script>
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<asp:Button ID="Button1" runat="server" Text="Button" class="MyButton" />
<table id="MyTable" >
<tr>
<td>This</td>
<td>is</td>
</tr>
</table>
</asp:Content>
可能的重複http://stackoverflow.com/questions/11714019/asp-net-hello-world-ajax-post – 2013-05-06 22:16:27