2つのSqlDataSourceと2つのリピータがあり、それぞれのリピータにハイパーリンクが1つあります(Webサーバーのボタンとアンカーを使用して試しました)。更新パネルでリピータをラップした後もページが更新されます
ハイパーリンクはデータベースからいくつかの値をフェッチし、NavigationUrlプロパティで私はstring.Format
メソッドを使用してパラメータ化されたURLを作成し、ブラウザに渡してから、2番目のリピータが元のURLに渡された値に従って読み込まれます今https://gist.github.com/726213
<asp:ScriptManager id="Scrptmanagr" runat="server"></asp:ScriptManager>
<asp:UpdatePanel id="updtpanl" runat="server">
<ContentTemplate>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:testConnectionString %>"
SelectCommand="SELECT [arrange_by_id], [arrange_by] FROM [arrange_by]">
</asp:SqlDataSource>
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1">
<ItemTemplate>
<asp:HyperLink ID="HyperLink3" NavigateUrl='<%# string.Format("{0}?SortingType={1}",Request.AppRelativeCurrentExecutionFilePath, Eval("arrange_by_id"))%>' runat="server"><%# Eval("arrange_by") %></asp:HyperLink>
</ItemTemplate>
<SeparatorTemplate>
|
</SeparatorTemplate>
</asp:Repeater>
<asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:testConnectionString %>"
SelectCommand="SELECT [alphabet_id],[arrange_by_id], [value] FROM [alphabet] WHERE ([arrange_by_id] = @arrange_by_id)">
<SelectParameters>
<asp:QueryStringParameter Name="arrange_by_id" QueryStringField="SortingType" Type="Int32" DefaultValue="1" />
</SelectParameters>
</asp:SqlDataSource>
<br /><br />
<asp:Repeater ID="Repeater2" runat="server" DataSourceID="SqlDataSource2">
<ItemTemplate>
<asp:HyperLink ID="hyper1" runat="server" NavigateUrl='<%#string.Format("{0}?SortingType={1}&SortBy={2}",Request.AppRelativeCurrentExecutionFilePath, Eval("arrange_by_id"),Eval("value"))%>'><%# Eval("value")%></asp:HyperLink>
</ItemTemplate>
<SeparatorTemplate>
|
</SeparatorTemplate>
</asp:Repeater>
</ContentTemplate>
</asp:UpdatePanel>
:最初のリピータのハイパーリンク
から渡された、これは私のサンプルコードです!ハイパーリンクのどれかをクリックするたびに、完全なポストバックが発生し、ページが更新されます。何か不足していますか?
残念ながら私はasp.netボタンを使って試してみましたが、それでも同じです! –
lKashef
そこにPostBackUrlを入れないでください!あなたはあなたの現在のページにポストバックしないように強制しているので、部分的なアップデートにラップすることはできません。 OnClickイベントで ''を実行してください!代わりに、URLにすべてがあるというアプローチに執着しているなら、 ''ではなく 'iframe'だけを使う方が良いでしょうか? –
Carson63000
私はどんなアプローチにも執着していません。 URLにパラメータを渡すことを提案したら、それを共有してください!よりよいアプローチを学ぶことができれば幸いです。 – lKashef