Partage
  • Partager sur Facebook
  • Partager sur Twitter

remove element.style

je n'arrive pas à trouver comment supprimer un élément de style

9 juin 2021 à 22:55:39

Bonjour,

J'utilise cette fonction dans ma page php, la bordure apparait en rentrant l'information prenom

$("#Prenom").keyup(function(){
                        if(!$("#Prenom").val().match(/^[\w\d\s-']{1,32}$/)){
                                $("#_Prenom").show().css("border-bottom", "2px solid #F90A0A");


le probleme c'est que la bordure reste tout le temps affichée même avec le script suivant:

const pagedest = document.querySelector('.content');
const bar = document.querySelector('.group input');

pagedest.addEventListener('click', () => {
	bar.classList.remove('style:"border-bottom"');
})

mon but est de supprimer cette bordure lorsque je clique en dehors du formulaire ou dans un champ autre.

j'ai mis ça:  bar.classList.remove('style:"border-bottom"'); mais je sais que je l'ai imaginé parceque sur la page php je vois apparaître style="border-bottom: 2px solid rgb(52, 244, 88);

Est ce que vous saviez comment on peut supprimer un element.style sachant qu'il se rajoute tout seul dans la page php avec la fonction keyup

Merci beaucoup pour votre aide!

  • Partager sur Facebook
  • Partager sur Twitter
9 juin 2021 à 23:02:16

Bonjour,

classList, c'est pour les classes, pas les attributs style :)

Crée une classe dans ton fichier CSS, et ajoute-la avec classList.add et retire-la avec classList.remove.

  • Partager sur Facebook
  • Partager sur Twitter

Pas d'aide concernant le code par MP, le forum est là pour ça :)

10 juin 2021 à 11:05:51

T'as juste à faire ça

element.style.borderBottom = "";

Or, si ton element a une class avec la propriété border-bottom et que tu veux effacer le borderBottom mis par js, j'ai cette fonction pour toi:

function deleteElementProperty(el, property){
    let a = el.style.cssText;

    let b = a.indexOf(property);

    el.style.cssText = a.slice(0, b)+a.slice(a.indexOf(";", b)+1);
}




  • Partager sur Facebook
  • Partager sur Twitter

Et tu auras dans cette petite ruelle au nom d'explore, une petite pièce d'or.

10 juin 2021 à 11:10:38

(je conseille tout de même de jouer avec les classes CSS plutôt que de modifier le style directement en JS)
  • Partager sur Facebook
  • Partager sur Twitter

Pas d'aide concernant le code par MP, le forum est là pour ça :)

10 juin 2021 à 17:13:35

CentreDordi a écrit:

T'as juste à faire ça

element.style.borderBottom = "";

Or, si ton element a une class avec la propriété border-bottom et que tu veux effacer le borderBottom mis par js, j'ai cette fonction pour toi:

function deleteElementProperty(el, property){
    let a = el.style.cssText;

    let b = a.indexOf(property);

    el.style.cssText = a.slice(0, b)+a.slice(a.indexOf(";", b)+1);
}

Bonjour CentreDordi

génial, j'essayerai ces deux options et les comparer à la méthode cité par @Lamecarlate 

 Merci beucoup!

Lamecarlate a écrit:

,

classList, c'est pour les classes, pas les attributs style :)

Crée une classe dans ton fichier CSS, et ajoute-la avec classList.add et retire-la avec classList.remove.

Bonjour Lamecarlate 


Merci beaucoup c'est une information de plus pour moi :)



-
Edité par CyranoDecasa 10 juin 2021 à 17:19:24

  • Partager sur Facebook
  • Partager sur Twitter