回發後,我有一個小頁面具有以下ASPX標記訪問了jQuery元素通過的UpdatePanel
<fieldset style="width:40%; margin-left:50px;">
<legend> Site User Role Management</legend>
<asp:Label ID="lblSiteUserDDl" runat="server" AssociatedControlID="ddlSiteUsers"
Text="Manage the roles in which a user is registered by selecting the user from the dropdown list below."></asp:Label>
<asp:DropDownList ID="ddlSiteUsers" runat="server" CssClass="dropdowns" AutoPostBack="True" ClientIDMode="Static" />
<br /><br />
<asp:UpdatePanel ID="updplRoleChange" runat="server" ClientIDMode="Static">
<ContentTemplate>
<fieldset id="rolemanagement" style="width:80%;" Visible="false" runat="server" >
<legend id="rolemgmtlegend" runat="server"></legend>
<asp:Label ID="lblCurrentRole" runat="server" CssClass="literaltext"></asp:Label><br />
<asp:Label ID="lblSiteUserRole" runat="server" CssClass="literaltext"></asp:Label><br /><br />
<asp:RadioButtonList id="rblstRoleChange" runat="server">
<asp:ListItem selected="true">Add Role to User</asp:ListItem>
<asp:ListItem>Remove Role from User</asp:ListItem>
</asp:RadioButtonList>
<asp:DropDownList ID="ddlUserRoles" CssClass="dropdowns" runat="server" AutoPostBack="True" ClientIDMode="Static" /><br />
<asp:Button ID="submitrolechange" Text="Submit Role Change" CssClass="buttons" runat="server" ClientIDMode="Static" Visible="False" />
</fieldset>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="ddlSiteUsers" EventName="SelectedIndexChanged"/>
<asp:AsyncPostBackTrigger ControlID="submitrolechange" EventName="Click"/>
</Triggers>
</asp:UpdatePanel>
</fieldset>
及以下的JQuery
<script>
$(document).ready(function() {
$('#ddlSiteUsers').change(function() {
$(this).css({ 'color': 'black', 'font-size': '1.1em', 'font-weight': 'bold' });
});
//
$('#updplRoleChange select').change(function() {
$('#submitrolechange').show();
$(this).css({ 'color': 'black', 'font-size': '1.1em', 'font-weight': 'bold' });
});
});
</script>
第一功能的工作原理,第二個沒有。在使用第一個下拉選擇器後,更新面板中沒有爲標記生成html,所以我甚至不確定選擇器ID是否實際上保持靜態。
不知道你的意思在這裏。這些函數被包裝在doc.ready中。你是否指jQuery中的page.IsPostback函數?如何維護jQuery中回傳之間的下拉CSS變化? – dinotom 2013-03-12 18:46:05
你說'第一個功能起作用,第二個功能不起作用.'我的回答是兩個功能都起作用。您不會在第二個函數中看到結果,因爲一旦調用該頁面,頁面就會回發到服務器。 – Win 2013-03-12 18:49:05
是的,我同意這一點,我可以看到在行動中,但我不知道如何解決這個問題,如何在最後一次回發期間保持該下拉菜單的CSS狀態?這就是問題所在。 – dinotom 2013-03-12 18:59:27