两个按钮多个切换元素jQuery

时间:2013-03-06 16:26:09

标签: jquery slidetoggle

我有多个表显示切换内容,一个按钮就可以了,但是我想用按钮做同样的事情,但是如果我点击按钮一个我想改变第一个按钮和第二个按钮的类,当你点击第二个按钮切换元素时,我想要改变两个按钮的类。

$('.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/

1 个答案:

答案 0 :(得分:1)

我认为this就是你想到的。

如何实现它:

$(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' );

fiddle再次链接。