web-dev-qa-db-fra.com

Comment définir "style = display: none;" en utilisant la méthode attr de jQuery?

Voici le formulaire avec l'ID msform auquel je veux appliquer l'attribut style = "display: none".

<form id="msform" style="display:none;">
</form>

La vérification doit également être effectuée avant d'ajouter le "style=display:none;" propriété. C'est-à-dire que s'il est déjà défini comme dans le code ci-dessus, il ne devrait pas être défini à nouveau.

Mais si ce n'est pas le cas, cela devrait l'être.

Comment dois-je y parvenir? Aidez-moi, s'il vous plaît.

38
user4407686

Pourquoi ne pas simplement utiliser $('#msform').hide()? Dans les coulisses, hide et show de jQuery définissent simplement display: none Ou display: block.

hide() ne changera pas le style s'il est déjà masqué.

sur la base du commentaire ci-dessous, vous supprimez tout le style avec removeAttr("style"), auquel cas appelez hide() immédiatement après.

par exemple.

$("#msform").removeAttr("style").hide();

L'inverse est bien sûr show() comme dans

$("#msform").show();

Ou, plus intéressant encore, toggle(), qui bascule efficacement entre hide() et show() en fonction de l'état actuel.

56
Gone Coding

Sauf hide() mentionné dans d'autres réponses, vous pouvez utiliser css():

$("#msform").css("display","none")
41
nicael
$(document).ready(function(){
var display =  $("#msform").css("display");
    if(display!="none")
    {
        $("#msform").attr("style", "display:none");
    }
});
8
Suraj Shrestha

Vous pouvez utiliser les fonctions hide et show de jquery. Exemples

Dans votre cas, définissez simplement $('#msform').hide() ou $('#msform').show()

3
Victor

Sur la base du commentaire, nous supprimons une propriété de l'attribut style.

Ici, cela n'a pas été affecté, mais lorsque plus de propriétés sont utilisées dans le style, cela est utile.

$('#msform').css('display', '')

Après cela, nous utilisons

$("#msform").show();
2
Srikrushna

Vous pouvez simplement utiliser: $("#msform").hide(). Cela définit l'élément sur display: none

1
jmore009

Vous pouvez utiliser la méthode jquery attr () pour obtenir le réglage de l'attribut et la méthode removeAttr () pour supprimer l'attribut pour votre élément msform Comme vu dans le code

$('#msform').attr('style', 'display:none;');


$('#msform').removeAttr('style');
0
Derly Pacheco