たとえば、ページに Listview コントロールがあるとします。各リストビュー アイテムには、2 つのドロップダウン リストと 1 つのテキスト ボックスがあります。最初のドロップダウンリストで選択した値が変更された場合、2 番目のドロップダウンリストには、最初のドロップダウンリストに応じて市区町村が入力されます。最後に、2 番目のドロップダウン リストの値を選択すると、テキスト ボックスにコストが表示されます。
<asp:ListView ID="_lsvCostFinder" runat="server">
<LayoutTemplate>
<table>
<tr>
<th>Country</th>
<th>City</th>
<th>Cost</th>
</tr>
<tr runat="server" id="itemPlaceHolder">
</tr>
</table>
</LayoutTemplate>
<ItemTemplate>
<tr>
<td>
<asp:DropDownList ID="_ddlCountry" runat="server" OnSelectedIndexChanged="ddlCountry_SelectedIndexChanged" AutoPostBack = "true">
</asp:DropDownList>
</td>
<td>
<asp:DropDownList ID="_ddlCity" runat="server" OnSelectedIndexChanged="ddlCity_SelectedIndexChanged" AutoPostBack = "true">
</asp:DropDownList>
</td>
<td>
<asp:TextBox ID="_txtCost" runat="server"></asp:TextBox>
</td>
</tr>
</ItemTemplate>
</asp:ListView>
ユーザーがドロップダウンリストに別の値を選択したときにajaxを使用したい
$('select').change(function () {
$.ajax({
type: "POST",
url: "Default.aspx/DropDownList1_SelectedIndexChanged",
data: "{}",
success: function(msg) {
// Replace the div's content with the page method's return.
//
}
});
tr要素全体だけを置き換えたい。それらは私の質問です:
データには何を送信すればよいですか? ドロップダウンリストの値?
ajax呼び出しをトリガーしたドロップダウンリストを含む行のみを置き換えるにはどうすればよいですか?
編集
すべてのメソッドには次の署名があります
protected void ddlCountry_SelectedIndexChanged(object sender, EventArgs e)
非常に長く複雑なページです。
助けてくれてありがとう