2013-03-14 97 views
-1

我有一个按钮是这样的:仅当jquery中的按钮有值时才显示按钮?

<button> {{ pages.first }}</button> 

<button>{{ pages.last }}</button> 

有时值{{pages.first}}可以是空的,有时不能。如果该值为空,我不想显示按钮。我曾经试过,但总是这个隐藏按钮:

if(!$('button').val()){ 
    $('button').hide(); 
} 
else { 
    $('button').show(); 
} 

我在做什么错?

我的按钮看起来像这样的代码:

<button class="next_prev" onclick="" disabled>{% get_pages %} {{ pages.next }}</button> <button class="next_prev" onclick="" id="last_button" disabled>{% get_pages %} {{ pages.last }}</button> 
+0

我想你想'文字'这里不是'val' ... – elclanrs 2013-03-14 06:59:48

回答

2

你需要使用text(),而不是val() ..和incaseof多个按钮,您需要通过按钮循环...

试试这个

$.each($("button"),function(){ //in case of multiple button 
    if(!$(this).text()){ 
    $(this).hide(); 
    } 
    else { 
    $(this).show(); 
    } 
}) 

working fiddle here

+0

只使用一个按钮:( – pynovice 2013-03-14 07:08:22

+0

检查我的小提琴.. :) ..它是与两个butto ns .. – bipen 2013-03-14 07:08:44

+0

是的,但只适用于一个按钮。 – pynovice 2013-03-14 07:09:33

1

使用.each()遍历并检查所有按钮:Sample

$.each($("button"),function(){ 
    if(!$(this).text().trim()){ 
    $('this).hide(); 
    } 
    else { 
    $(this).show(); 
    } 
}); 

您的代码.val()会为<input type="submit"/>按钮

1

工作中使用的text代替val会做的伎俩

if(!$('button').text()){ 
    $('button').hide(); 
} 
else { 
    $('button').show(); 
} 
+0

不工作仍然是我整个按钮看起来是这样的: <按钮类= “next_prev” 的onclick = “” 禁用> {%get_pages%} {{pages.next}} \t <按钮类= “next_prev” 的onclick = “”id =“last_button”disabled> {%get_pages%} {{page.last}} 即使它是空的,我也会收到按钮。 – pynovice 2013-03-14 07:06:28

相关问题