jQueryタブを使用してマスター詳細ソリューションを実装しようとしています。2つのタブ、最初のタブにはNorthwindの顧客が含まれ、customerコマンドを選択すると、顧客の注文を含むtab2が表示されます。
これまでのところ、ある種のAjaxを使用せずにそれを行うことはできないという結論に達しました。私は正しいですか?
Matt、 MattBersethからいくつかのポインタを受け取りました。
誰かがこれを達成する方法について共有できるアイデアやサンプルを持っていますか?
これを行う1つの方法は、GridView1のLinkButtonのClient ClickイベントでCustomerIdを渡し、Tab2にフォーカスして、JavaScriptを介して詳細グリッドをロードすることだと考えています。私はJavascriptがあまり得意ではないので、ここで立ち往生しています。
提案とサンプルコードは非常に役立ちます。
ありがとう
<div id="tabs">
<ul>
<li><a href="#tabs-1">Customers</a></li>
<li><a href="#tabs-2">Orders</a></li>
</ul>
<div id="tabs-1">
<asp:GridView ID="GridView1" runat="server" AllowPaging="True"
AutoGenerateColumns="False" DataKeyNames="CustomerID"
DataSourceID="SqlDataSource1" PageSize="20">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="lbtnSelect" runat="server"
Text="Select Link" />
</ItemTemplate>
</asp:TemplateField>
<asp:CommandField ShowSelectButton="True" />
<asp:BoundField DataField="CustomerID" HeaderText="CustomerID" ReadOnly="True"
SortExpression="CustomerID" />
<asp:BoundField DataField="CompanyName" HeaderText="CompanyName"
SortExpression="CompanyName" />
<asp:BoundField DataField="Region" HeaderText="Region"
SortExpression="Region" />
<asp:BoundField DataField="PostalCode" HeaderText="PostalCode"
SortExpression="PostalCode" />
</Columns>
</asp:GridView>
</div>
<div id="tabs-2">
<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False"
DataKeyNames="OrderID" DataSourceID="SqlDataSource2">
<Columns>
<asp:BoundField DataField="OrderID" HeaderText="OrderID" InsertVisible="False"
ReadOnly="True" SortExpression="OrderID" />
<asp:BoundField DataField="CustomerID" HeaderText="CustomerID"
SortExpression="CustomerID" />
<asp:BoundField DataField="OrderDate" HeaderText="OrderDate"
SortExpression="OrderDate" />
</Columns>
</asp:GridView>
</div>
</div>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
SelectCommand="SELECT [CustomerID], [CompanyName], [Region], [PostalCode]
FROM [Customers]">
</asp:SqlDataSource>
<asp:SqlDataSource ID="SqlDataSource2" runat="server"
ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
SelectCommand="SELECT [OrderID], [CustomerID], [OrderDate]
FROM [Orders] WHERE ([CustomerID] = @CustomerID)">
<SelectParameters>
<asp:ControlParameter ControlID="GridView1" Name="CustomerID"
PropertyName="SelectedValue" Type="String" />
</SelectParameters>
</asp:SqlDataSource>