0

トグルコンテンツを表示する複数のテーブルがあり、1つのボタンでOKですが、同じことを行うためにボタンを使用したいのですが、ボタン1をクリックすると、最初のボタンと2番目のボタンのクラスを変更します。 2番目のボタンで要素を切り替えます両方のボタンのクラスを変更します。

$('.triggerNew,.triggerInfo').click(function() {   
  var Itemid = $('#Itemid').val();   
  var text = $(this).text();   
  var id = $(this).attr('id');   
  var lijn = 'tr#' + 'lijn' + $(this).attr('id');   
  var extra = 'tr#' + 'extra' + $(this).attr('id');   
  var result = '#result' + $(this).attr('id');   
  var triggerNew = $(".triggerNew");

  $('.triggerNew').text($(this).text() == '[-]' ? '[+]' : '[-]');
  $('.triggerInfo').text($(this).text() == 'infonew' ? 'info' : 'infonew'); 

  if(text == '[+]' || text == 'info') {
    $("<tr id=\"extra" + id + "\"><td colspan=\"5\"><div id=\"result" + $(this).attr('id') + "\"><div class=\"block\" style=\"text-align:center;padding:10px 0 10px 0;\"><img src=\"img/ajax-loader.gif\" /></div></div></td></tr>").insertAfter(lijn);

    $(extra).hide();
    $(extra).slideDown('slow');
    $(result).load(rooturl+'#' + id + '&Itemid=' + Itemid);
    $(this).removeClass('yescondext').addClass('nocondtext');

    return false;
  } else {
    $(extra).slideUp('slow');
    $(result).remove();
    $(this).removeClass('nocondtext').addClass('yescondext');
    return false;
  }
});   

誰か助けてくれませんか

すべてのコードはここにあります

http://jsfiddle.net/QKyYS/8/

4

1 に答える 1

1

これはあなたが念頭に置いていることだと思います。

それを達成する方法:

$(this).closest('td').find(".triggerNew").text( $(this).closest('td').find(".triggerNew").text() == '[-]' ? '[+]' : '[-]' );
$(this).closest('td').find(".triggerInfo").text( $(this).closest('td').find(".triggerInfo").text() == 'infonew' ? 'info' : 'infonew' );

$(result).load(rooturl + '#' + id + '&Itemid=' + Itemid);呼び出しの直後に、そこにいるはずです。

また、elseブロックでは

$(this).closest('td').find(".triggerNew").text( $(this).closest('td').find(".triggerNew").text() == '[-]' ? '[+]' : '[-]' );
$(this).closest('td').find(".triggerInfo").text( $(this).closest('td').find(".triggerNew").text() != 'infonew' ? 'info' : 'infonew' );

フィドルリンクをもう一度。

于 2013-03-06T19:24:29.970 に答える