asp.netのボタンのクリックイベントで、あるjquery uiタブから別のjquery uiタブに移動する方法を教えてください。私のプロジェクトでは、1 つに 2 つの jquery ui タブがあり、例に基づいてデータベース検索を実行する必要があります: empName、DoB など。ユーザーが検索ボタンをクリックすると、検索結果が配置されたグリッドビューに表示されます。 2番目のタブが機能していません.htmlボタンを使用してjquery uiタブ間を移動する方法は知っていますが、aspボタンを使用しているときは機能していません.runat = "server"があるためだと思います.....私は完全に混乱しており、この点での助けをいただければ幸いです。
1927 次
2 に答える
0
できることは次のとおりです。
2 番目のタブを開くための JavaScript のコードがあるとします。
$('div').tab2(); // dummy javascript code
次に、ボタンクリックイベントでこれを行うことができます:
protected void Button_Click(object sender, EventArgs e)
{
// Code
ScriptManager.RegisterStartupScript(page, typeof(Page), Guid.NewGuid().ToString(), "$('div').tab2();", true);
}
于 2012-08-06T06:39:14.107 に答える
0
<asp:Button ...> は、JavaScript コードをクリック イベントに自動的にアタッチして、コードで指定した変更タブの動作をオーバーライドするポストバックを発生させます。(ハンドラーのアタッチ方法によっては、年齢がリロードされる前に、タブがちらつくことに実際に気付く場合があります)。
ポストバックが必要な場合
たとえば、サーバー上で DB 検索を処理し、グリッドビューの DataSource を設定したとします。ページの非表示フィールドを使用して、起動時にどのタブを表示するかを保存し、それをクリック イベントに設定できます。この例では、tab1 と tab2 という名前の 2 つのタブがあると想定しています。
<!-- In your .aspx file -->
<asp:HiddenField runat="server" ID="tabToShowOnLoad" Value="tab1" />
//In the js function which creates your tabs
$(document).ready(function() {
$("#yourTabContainer").tabs();
$("#yourTabContainer").tabs("select", $("#tabToShowOnLoad").val());
});
'In your code behind
Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
'Code you use to run the db search
tabToShowOnLoad.Value = "tab2"
End Sub
ポストバックが不要な場合
たとえば、ajax を使用して (UpdatePanel などを使用して) 検索とデータバインドを実行します。<asp:Button ...> を使用する理由はありません。従来の <input type="button"> に切り替えるだけで、頭痛の種を回避できます。
于 2012-08-06T06:52:14.143 に答える