-1

私はスクリプトを持っています:

<script>
$(function(){
  $("#projectReqTable","body").on({'click':function(event){
    event.preventDefault();
    $(this).closest("tr.main").nextUntil("tr.main").toggle("slow");
   }},
   "a.main",null);
});
</script>

これは、テーブルの行を表示/非表示にします。これで表示され、ボタンをクリックして非表示にする必要があります。ページの読み込み時に自動的に非表示にするにはどうすればよいですか?

hiddenのCSSプロパティはトリックを行いますが、後でセルが表示されるのをフィルタリングすることはできません。ページの読み込み時にそれらを非表示にし、スクリプトを使用してそれらを表示する必要があります。

4

3 に答える 3

0

jqueryでtrigger()関数を使用する

ページの読み込み時にボタンクリックイベントをトリガーできます

$("#projectReqTable","body").trigger('click');

お役に立てれば

より明確に

<script type="text/javascript">
$(document).ready(function(){
   $("#projectReqTable","body").on({'click':function(event){
    event.preventDefault();
    $(this).closest("tr.main").nextUntil("tr.main").toggle("slow");
   }},
   "a.main",null);


   $("#projectReqTable","body").trigger('click');

});
</script>
于 2012-11-09T08:31:15.963 に答える
0

.click()最後に追加するだけです。それはクリックをシミュレートします。

<script>
$(function(){
  $("#projectReqTable","body").on({'click':function(event){
    event.preventDefault();
    $(this).closest("tr.main").nextUntil("tr.main").toggle("slow");
   }},
   "a.main",null).click();
});
</script>
于 2012-11-09T08:25:34.630 に答える
0

私の解決策は、フィルター列を変更して、彼を tr.main 列に移動することでした。

ただし、フィレモン・フィリップ・クンジュモンが提供したソリューションも非常に役立ちます。

彼の解決策の場合の完全なコードは次のとおりです。

$(function(){
  $("#main-data-table","body").on({'click':function(event){
    event.preventDefault();
    $(this).closest("tr.main").nextUntil("tr.main").toggle("fast");
   }},
   "a.main",null);
$("#main-data-table").find('.data').css('display','none');
});​

これが実際の例です:http://jsfiddle.net/wG8qf/107/

于 2012-11-12T14:42:33.027 に答える