[RESOLU] Deux fonctions JS qui sont en conflit ???

Eléphant du PHP | 208 Messages

05 août 2018, 21:39

Bonjour, je viens d'ajouter à mon html un bout de code
onkeyup="javascript:this.value=this.value.toUpperCase();"
permettant de mettre en majuscule du texte (je ne le veux pas ni en CSS ni en PHP).
Le problème est qu'il me semble être en conflit avec mon autre fonction JS juste en dessous.
En effet, lorsque je supprime :
id="texte_1"
ou
maxlength_textarea('texte_1','carac_texte_1',10);
cela fonctionne.
Je suis sûr que c'est un truc tout bête mais je suis très débutant en JS et je n'est pas trouvé comment régler ce conflit.

<div class="boite_texte">	
	<input onkeyup="javascript:this.value=this.value.toUpperCase();" id="texte_1" />
	<span class="carac_restants" id="carac_texte_1"></span>
	<script type="text/javascript">
		<!--
		maxlength_textarea('texte_1','carac_texte_1',10);
		-->
	</script>
</div>
Pourriez-vous me venir en aide svp ?
Cadeaux personnalisés d'après photos, gravure...
http://www.cadeauxplaisir.com/

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 7702 Messages

05 août 2018, 23:53

Bonjour,

Il faut regarder ce que fait la fonction maxlength_textarea()
Si elle redéfinit onkeyup pour faire autre chose, alors, c'est la raison pour laquelle ce que tu as définit ne fonctionne pas.

La solution est de mettre en place un listener en javascript plutôt que directement dans la balise <input> :
https://developer.mozilla.org/fr/docs/W ... ntListener
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphant du PHP | 208 Messages

06 août 2018, 01:34

Merci beaucoup pour ton aide, tu as exactement cerné le problème, j'ai donc utilisé un listener (avec pas mal de difficulté car débutant) et réussis à faire fonctionner mes 2 fonctions.
Très bonne soirée.
Cadeaux personnalisés d'après photos, gravure...
http://www.cadeauxplaisir.com/