1

いくつかのJQueryタブがあるasp.netページがあります。すべて問題なく動作します。タブの1つにドロップダウンリストを追加しました。これにより、ポストバックが発生します。ポストバックの後、同じタブを選択したいと思います。

タブを次のように初期化します。

<script type="text/javascript">
    $(document).ready(function() {
     var $myTabs = $(".tabsDiv").tabs();
</script>

次に、PageLoadイベントで、スクリプトを挿入してタブを選択します。

Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "TabSelect", "$myTabs.tabs('select', 1);", true);

何らかの理由でこれは機能しません。スクリプトは実行されていますが、タブが選択されていません。RegisterClientScriptBlockがスクリプトをページの下部に配置し、何らかの理由で実行が遅すぎるためですか?

どんな助けでも大歓迎です。事前にThx

4

2 に答える 2

2

$ myTabs.tabs('select'、1);を呼び出します。エラーになると思います。$myTabsはグローバル変数ではありません。スコープは$(document).ready(function(){...});にのみあります。$( "。tabsDiv")。tabs('select'、1);で試してみてください。そしてそれが機能するかどうかを確認しますか?

よろしく...

于 2010-06-25T11:50:47.177 に答える
1

実行が早すぎる可能性があります...ページの下部が適切です。代わりにこれを試してください。

Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "TabSelect", 
    "$(document).ready(function() { $myTabs.tabs('select', 1); });", true);

基本的に、readyイベントでもこのコードを実行します。

于 2010-06-25T11:49:51.633 に答える