jQueryを使用してドロップダウンリスト(asp.netサーバーコントロール)の値を設定するという問題が発生していますが、ポストバック時に選択された値が変更されません。コントロールはデータバインドされていないため、この問題は変更が上書きされることとは関係がないと思います。コントロールはWizardControl内にありますが、これもこの問題とは関係がないと思います。クライアント側では、すべてが期待どおりに機能します。
これが私のコードです:
<asp:DropDownList runat="server" ID="MilitaryBackgroundSelect" ClientIDMode="Static">
<asp:ListItem Text="" Value="" Selected="True" />
<asp:ListItem Text="No" Value="0" />
<asp:ListItem Text="YES, IN THE ARMED FORCES" Value="1" />
<asp:ListItem Text="YES, IN THE RESERVES" Value="2" />
<asp:ListItem Text="YES, IN THE NATIONAL GUARD" Value="3" />
<asp:ListItem Text="REFUSED" Value="-7" />
<asp:ListItem Text="DON'T KNOW" Value="-8" />
<asp:ListItem Text="MISSING DATA" Value="-9" />
</asp:DropDownList>
このコードを使用して、クライアント側でドロップダウンリストを設定しています。
$(document).ready(function(){
$('#MilitaryBackgroundSelect').val("1");
});
注:ドロップダウンリストでclientidmodeをstaticに設定したので、jQueryを使用して問題なく操作できます。以下はレンダリングされたHTMLです。idフィールドに注意してください。
<select name="ctl00$ctl00$MainContent$MainContentNested$AHHQ_DataEntryWizard$MilitaryBackgroundSelect"
id="MilitaryBackgroundSelect">
<option value=""></option>
<option selected="selected" value="0">No</option>
<option value="1">YES, IN THE ARMED FORCES</option>
<option value="2">YES, IN THE RESERVES</option>
<option value="3">YES, IN THE NATIONAL GUARD</option>
<option value="-7">REFUSED</option>
<option value="-8">DON'T KNOW</option>
<option value="-9">MISSING DATA</option>
</select>