【问题标题】:problem in if & else?if & else 中的问题?
【发布时间】:2011-08-19 23:47:00
【问题描述】:

为什么在选择框中选择值“2”后if(length_pa >= 16){ ...不起作用,在选择框中选择值“全部”后if(length_pa == 0){...不起作用???
[在"var length_pa" $('#pagination a') 中更改长度(数字)不能为#prev_pag, #next_pag 工作“显示”和“隐藏”。]

示例: See This

var length_pa = $('.pagination a').size();
    if(length_pa >= 16){
        $('.prev_pag, .next_pag').show();
    }else{
        $('.prev_pag, .next_pag').hide();
        $('.pagination').css('float','none')
    }
    if(length_pa == 0){
        alert('0000000000')
        $('.hesar_number').css('display','none');
    }

我该怎么办?

说明:
如果选择该值2,则必须显示.prev_pag, .next_pag
如果该值“全部”被选中,.hesar_number 必须隐藏('display','none')
但是这些并没有发生……为什么!?

【问题讨论】:

  • 您确实必须更好地解释您的问题。我什至不知道你说的不工作是什么意思。 if 语句怎么会不起作用?
  • @Felix - 你看到它是真的(有效)吗?
  • 请看我帖子中的说明

标签: javascript jquery


【解决方案1】:

您发布的代码仅出现在$(document).ready 块中,这意味着它在页面首次加载时执行。您的意思是要将其添加到$('#coun_page').change 事件中吗?

$('#coun_page').change(function() {
    var length_pa = $('.pagination a').size();

    if (length_pa >= 16) { 
        $('.prev_pag, .next_pag').show(); 
    } else { 
        $('.prev_pag, .next_pag').hide(); 
        $('.pagination').css('float','none');
    }

    if (length_pa == 0) { 
        alert('0000000000');
        $('.hesar_number').css('display','none');
    }
});

【讨论】:

  • 请参阅我的第一篇文章中的说明
  • @Sheikhasa:您的网站仍然使用您的原始代码,而不是 Dan Tao 建议的代码。
【解决方案2】:

首先,您缺少分号。

var length_pa = $('.pagination a').size();
if(length_pa >= 16) {
    $('.prev_pag, .next_pag').show();
}
else {
    $('.prev_pag, .next_pag').hide()
    $('.pagination').css('float', 'none'); // Semicolon was missing
}
if(length_pa == 0) {
    alert('0000000000'); // Semicolon was missing
    $('.hesar_number').css('display', 'none');
}

【讨论】:

  • 设置分号是个好习惯,但省略它们不会导致错误(至少在这种情况下不会)。
  • @tmcopeland - Right 告诉过你,但这并没有解决问题。还是有的
  • 请参阅我的第一篇文章中的说明
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-05
  • 2014-09-26
  • 1970-01-01
  • 2011-04-14
  • 2021-05-15
相关资源
最近更新 更多