带+和 - 符号的可折叠列表无效

时间:2014-01-31 12:10:26

标签: javascript jquery html

这是我写的用来处理它的脚本,但出于某种原因+和 - 交换没有发生

$('.showCheckbox').click(function(e) {
    var dynamicBox = $(this).attr('val');
    var collapseSign = $(this).attr('id');
    $('#'+dynamicBox).slideToggle();
    $('#'+dynamicBox+collapseSign).html(function(_, text){
        return text === '+' ? '−' : '+';
    });
});

你可以在这里找到小提琴http://jsfiddle.net/7Gt4L/请帮忙!

2 个答案:

答案 0 :(得分:2)

变化:

$('#'+dynamicBox+collapseSign).html(function(_, text){
    return text === '+' ? '−' : '+';
});

为:

$('#'+collapseSign).html(function(_, text){
    return text === '+' ? '−' : '+';
});

这将使用单击的折叠符号的ID来更改文本。

Fiddle

答案 1 :(得分:2)

我相信你的选择器的collapseSign部分应该是一个字符串。否则,您将尝试匹配类似于#partnerspartnerscollapseSign的内容,该内容不存在:

$('.showCheckbox').click(function(e) {
    var dynamicBox = $(this).attr('val');
    $('#'+dynamicBox).slideToggle();
    $('#'+dynamicBox+'collapseSign').html(function(_, text){
        return text === '+' ? '−' : '+';
    });
});

JSFiddle