Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
两个按钮多个切换元素jQuery_Jquery_Slidetoggle - Fatal编程技术网

两个按钮多个切换元素jQuery

两个按钮多个切换元素jQuery,jquery,slidetoggle,Jquery,Slidetoggle,我有多个表显示切换内容,其中一个按钮是OK,但我想使用ToButtons来做同样的事情,但是如果我单击button one,我想更改第一个按钮和第二个按钮的类,当您单击second button来切换元素时,我想更改这两个按钮的类 $('.triggerNew,.triggerInfo').click(function() { var Itemid = $('#Itemid').val(); var text = $(this).text(); var id = $

我有多个表显示切换内容,其中一个按钮是OK,但我想使用ToButtons来做同样的事情,但是如果我单击button one,我想更改第一个按钮和第二个按钮的类,当您单击second button来切换元素时,我想更改这两个按钮的类

$('.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;
  }
});   
$('.triggerNew,.triggerInfo')。单击(函数(){
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');
如果(文本=='[+]'| |文本=='info'){
$(“”)。后面插入(lijn);
$(额外).hide();
$(额外)。向下滑动(“慢速”);
$(result).load(rooturl+'#'+id+'&Itemid='+Itemid);
$(this.removeClass('YesContext').addClass('nocondtext');
返回false;
}否则{
$(额外).slideUp('slow');
$(结果).remove();
$(this.removeClass('nocondtext').addClass('yescondext');
返回false;
}
});   
有人能帮我吗

所有代码都在这里

我想这就是你的想法

如何实现这一目标:

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

再次链接。

请把你的HTML也放进去。但我在
$(this)后面还有一行。removeClass('nocondtext')。addClass('yescondext')$(this)
替换为
$(this).closest('td')。查找(“.triggerNew,.triggerninfo”)
@user2140670您可以选择答案以关闭此问题。否则它会在未回答的问题列表中弹出。我有另一个问题,如果它们不在同一个“td”中,我可以使用“tr”而不是“
$j(this).closest(.triggerNew”).text($j(this).closest('tr').find(.triggerNew”).text()=”[-]”?“[+]”:“[-]”;$j(this).closest('tr').find('triggerInfo').text($j(this).closest('tr').find('triggerNew').text()!='infonew'?'info':'infonew');$j(this).closest('tr').find('triggerNew').removeClass('nocondtext').addClass('yescondext')$j是我的生产标记所有此类查询都应该是同一父项。是的,
tr
也应该有效。