11488 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

Je voudrais savoir si quelqu'un a déja réussi á changer la valeur d'un textarea qui se trouve a l'intérieur d'un iframe.

Le problème est que j'arrive á récupérer le texte á l'intérieur des balises <textarea></textarea>, mais je n'arrive pas á le modifier, ni á y insérer un nouveau.

Pour ma part, j'ai fait quelques recherches mais je n'ai rien trouvé d'intéressant. J'ai aussi essayer d'installer TinyMce et FCKEditor, mais apparement ces deux éditeurs wysiwyg ne proposent pas cette fonctionnalitée.
Par exemple, FCKEditor permet d'insérer un textarea, mais pas d'y modifier le texte á l'intérieur.

(Une deuxième question que je me pose est : peut-on enlever du html d'une iframe ? , mais ca je verrais plus tard Smiley smile )

Quelqu'un aurait-il une idée ?

Merci d'avance.
jean-nicolas a écrit :
Bonjour,

Je voudrais savoir si quelqu'un a déja réussi á changer la valeur d'un textarea qui se trouve a l'intérieur d'un iframe.

Le problème est que j'arrive á récupérer le texte á l'intérieur des balises
<textarea></textarea>
, mais je n'arrive pas á le modifier, ni á y insérer un nouveau.

Pour ma part, j'ai fait quelques recherches mais je n'ai rien trouvé d'intéressant. J'ai aussi essayer d'installer TinyMce et FCKEditor, mais apparement ces deux éditeurs wysiwyg ne proposent pas cette fonctionnalitée.
Par exemple, FCKEditor permet d'insérer un textarea, mais pas d'y modifier le texte á l'intérieur.

(Une deuxième question que je me pose est : peut-on enlever du html d'une iframe ? , mais ca je verrais plus tard Smiley smile )

Quelqu'un aurait-il une idée ?

Merci d'avance.


Bonjour,

normalement si tu as une référence vers ton iframe c'est possible assez facilement.
Tout d'abord le fichier qui va être appelé dans ton iFrame "plouf.html" :


<html>
	<head>
		<title>
			Test
		</title>
	</head>
	<body>
		<form name="myForm">
			<input type="text" name="inputField" />
		</form>
	</body>
</html>

et ensuite le code de la page contenant l'iFrame :

<html>
	<head>
		<title>Essai</title>
	</head>
	<body>
		<iframe name="myIFrame" src="plouf.html" width="50%" heigut="50%">Votre navigateur ne supporte pas les IFrames</iframe>
		<input type="button" value="Valider" onClick="javascript:myIFrame.document.myForm.inputField.value='lalala';" />
	</body>
</html>

Comme tu peux le voir, ton iFrame est référencé par un nom que tu peux récupérer directement : 'myIFrame'
Ensuite, de cet iFrame tu récupères le document : 'myIFrame.document'
Et là, tu fais comme si tu manipulais un document normal.
Ici, je réagis lorsque je clique sur le bouton : je vais chercher le champ 'inputField' que je remplis avec 'lalala'
Regarde bien ce qu'il y a dans le 'onClick' et tu comprendras directement.

Voilà, c'est aussi simple que ça Smiley cligne

Cordialement,
Flavien
Modifié par Flavien (29 Jun 2006 - 13:46)
Salut,

En effet, cela fonctionne bien avec un <input>, mais as tu déja essayé ave un textarea ?

Pour reprendre ton expemple, il y aurait dans le fichier plouf.html :


<html>

	<head>

		<title>

			Test

		</title>

	</head>

	<body>

		<textarea> plouf plouf </textarea>

	</body>

</html>



Chez moi, ca ne fonctionne pas Smiley ohwell .
jean-nicolas a écrit :
Salut,

En effet, cela fonctionne bien avec un <input>, mais as tu déja essayé ave un textarea ?
...

Chez moi, ca ne fonctionne pas Smiley ohwell .


Voilà comment je fais :

le fichier qui va se trouver dans la iFrame :

<html>
	<head>
		<title>
			Test
		</title>
	</head>
	<body>
		<textarea id="myText" rows="5" cols="55"></te xtarea>
	</body>
</html>

et le fichier qui contient la iFrame :

<html>
	<head>
		<title>Essai</title>
	</head>
	<body>
		<iframe name="myIFrame" src="plouf.html" width="50%" heigut="50%">Votre navigateur ne supporte pas les IFrames</iframe>
		<input type="button" value="Valider" onClick="javascript:myIFrame.document.getElementById('myText').value='lalala';" />
	</body>
</html>


Voilà Smiley cligne

Bonne journée,
Flavien