younes371
Messages postés502Date d'inscriptionmercredi 29 décembre 2004StatutMembreDernière intervention20 mars 2012
-
11 oct. 2006 à 13:06
younes371
Messages postés502Date d'inscriptionmercredi 29 décembre 2004StatutMembreDernière intervention20 mars 2012
-
12 oct. 2006 à 00:34
Bonjour,
Je veux que lorsque un user clique sur le signe " + " une nouvelle zone de texte s'affiche.
J'ai fait un script, mais il ne m'affiche qu'une seule zone !, et moi je veux 10 !?.
je vous copie le code aussi pour m'aider, j'ai utilisé un tableau de 10 elements, mais ... ? à vous de me dire oû se localise l'erreure, et merci d avance
<html>
<head>
<title>ICWS</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript" language="JavaScript">
var TabOnglet=new Array(10);
var i=0;
function AfficheOnglet(){
//-- on affiche la nouvelle zone
rubiks10
Messages postés224Date d'inscriptionlundi 19 décembre 2005StatutMembreDernière intervention 6 juin 20073 11 oct. 2006 à 23:19
Salut
Il faut que tu saches que plusieurs éléments ne doivent pas avoir le meme id sur une meme page...
Puis chose inutile que d'utiliser un tableau... enfin je te donne une solution compatible pour tous les navigateurs car ton code ne fonctionnait pas du tout sous firefox (meme pas une input d'affichée)
Voila le code a toi de comprendre les erreurs et pose des questions si jamais tu ne comprends pas trop... mais bon c'est très simple
ps : je ne sais pas trop comment tu voulais les afficher ( a la suite sur le meme ligne ou alor l'une sous l'autre )
donc si tu veux les afficher l'une sous l'autre alors change tous les " display:inline; " par " display:block; "
Voila le code :
<html>
<head>
<title>ICWS</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
function AfficheOnglet(){
var maxInput = 10; // Nombre d'input maximum
//-- on recupere le container des onglets
var OngletContainer = document.getElementById('Onglet');
//-- on compte le nombre d'input existantes
var numberInput = OngletContainer.getElementsByTagName('input').length + 1;
//-- on affiche la nouvelle zone
if ( numberInput < maxInput ){
OngletContainer.innerHTML += '';
}
//-- on donne le focus au nouvel input affiché
document.getElementById('onglet'+numberInput).focus();
}
</script>
</head>
rubiks10
Messages postés224Date d'inscriptionlundi 19 décembre 2005StatutMembreDernière intervention 6 juin 20073 12 oct. 2006 à 00:24
Encore moi... désolé le code que j'ai proposé a une petite erreur ( probleme sous OPERA )
En fait il faut donner le focus a l'interieur de la condition IF
voila le code final :
<html>
<head>
<title>ICWS</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
function AfficheOnglet(){
var maxInput = 10; // Nombre d'input maximum
//-- on recupere le container des onglets
var OngletContainer = document.getElementById('Onglet');
//-- on compte le nombre d'input existantes
var numberInput = OngletContainer.getElementsByTagName('input').length + 1;
//-- on affiche la nouvelle zone
if ( numberInput <= maxInput ){
OngletContainer.innerHTML += '';
//-- on donne le focus au nouvel input affiché
document.getElementById('onglet'+numberInput).focus();
}
}
</script>
</head>
younes371
Messages postés502Date d'inscriptionmercredi 29 décembre 2004StatutMembreDernière intervention20 mars 2012 12 oct. 2006 à 00:34
Merci Bcp pour ton aide, ça marche très très bien,
Ecnore une fois un grand Bravo et merci.
en cherchant sur le net j'ai trouver ce code :
<html>
<head>
<title>Ajout plusieurs champs Texte </title>
<script>
function create_champ(i) {
younes371
Messages postés502Date d'inscriptionmercredi 29 décembre 2004StatutMembreDernière intervention20 mars 2012 11 oct. 2006 à 16:54
Tjs pas de reponse;
j'ai chang le langage, je l ai fait en XAJAX, et ça marche tres bien
mais si vous pouvez amelirer(corriger ) celui là, ça sera gentil