2012-04-04 5 views
3

ich diesesScheck ausgeblendet, wenn gleich wahr oder falsch jQuery

$('#div').attr("hidden", true); 

ich versucht habe:

var a = $('#div').attr("hidden"); 
var b = $('#div').attr("hidden").val(); 
var c = $('#div').hidden; 
var a = $('#div').disabled; 

Ich möchte nur wissen, ob versteckt wahr oder falsch ist. Weiss es jemand? Meine Forschungsergebnisse drehen sich um Formen und Inputs.

+1

was bedeutet "versteckt" zu verstehen? Ich wusste nicht, dass es ein "verstecktes" Attribut für ein div gab. – Joseph

+0

Was versuchst du zu tun? das div verbergen oder einen Wert in den Attributen speichern? – gdoron

Antwort

9

Attribut wird nie true sein, es kann nur Zeichenfolgen haben.
jQuery hat die data Funktionen für andere Objekte als Zeichenketten:

$('#div').data("hidden", true);  // set the "hidden" data 
var flag = $('#div').data("hidden"); // get the "hidden" data (true) 

Wenn Sie die div, verwenden .hide() verbergen wollte:

$('#div').hide(); 

Und Sie überprüfen, ob die div sichtbar ist mit :visible \ :hidden

$('#div').is(':visible'); // Or $('#div').is(':hidden') 
+1

Ich würde empfehlen, die Verwendung von Daten versteckt statt nur versteckt für HTML5-Kompatibilität, und es besser zu jquery.data verwenden. Sie können auch die numerische Darstellung 0 (falsch), 1 (richtig) – Panagiotis

+0

vielen Dank, das ist, wie es geht! – p0rter

+0

@ Panagiotis. Sie lesen besser 'Daten'-Dokumente in der API-Site. – gdoron

1

ich denke, Sie jquery bedeuten visible

.is(':visible') 
1

Alternativ Sie

$('#div').toggle(showOrHide); 

verwenden könnte, wo showOrHide ein Bool von wahr oder falsch ist ein- oder ausblenden.

Dies ist die gleiche wie zu tun

if (showOrHide == true) { 
    $('#div').show(); 
} else if (showOrHide == false) { 
    $('#div').hide(); 
} 

hoffe, das hilft

Verwandte Themen