Javascript ajout d'éléments dans zone input

Fermé
fireangel - 12 juin 2008 à 17:37
 fireangel - 12 juin 2008 à 20:23
Bonjour,

J'ai un problème avec un code en javascript,

J'ai trouvé ce code :

flag=0

function addTex(let)
{
var story = document.tex.texarea.value
if(let=="BACK"){
story=story.substring(0, story.length-1)
document.tex.texarea.value=story
document.tex.texarea.focus()
}

else if(flag==1)
{
story+=let.toUpperCase()
flag=0
document.tex.texarea.value=story
document.tex.texarea.focus()
}
else
{
story+=let
flag=0
document.tex.texarea.value=story
document.tex.texarea.focus()
}
}
function capIt()
{
flag=1
}

Qui permettrai d'ajouter des éléments dans un champ input ayant pour nom texarea en mettant dans une balise href="javascript:addTex('texte')" les éléments à ajouter.


Il fonctionne correctement, le problème c'est qu'il ajoute les éléments à la fin, es-ce que quelqu'un saurai comment faire pour qu'il ajoute les éléments là où est positionné le curseur ?

Merci à ceux qui pourront m'aider.

4 réponses

Tiller Messages postés 781 Date d'inscription mercredi 4 juillet 2007 Statut Membre Dernière intervention 14 septembre 2008 210
12 juin 2008 à 18:09
http://www.javascriptfr.com
Merci qui? Merci qui? Merci google.
0
Merci mais ça m'aide pas vraiment parce ça fonctionne que sous Internet Explorer, et parce que je cherche à modifier le code que j'ai déjà et qui fonctionne partout.
0
Je reviens à charge,

j'ai réussi mais qu'à moitié

j'ai trouvé ce code :

function insertValue(chaineAj) {
var myForm = document.WriteForm.text;
//IE support
if (document.selection) {
myForm.focus();
sel = document.selection.createRange();
sel.text = chaineAj;
document.WriteForm.focus();
}
//MOZILLA/NETSCAPE support
else if (document.WriteForm.text.selectionStart || document.WriteForm.text.selectionStart == "0") {
var startPos = document.WriteForm.text.selectionStart;
var endPos = document.WriteForm.text.selectionEnd;
var chaine = document.WriteForm.text.value;

myForm.value = chaine.substring(0, startPos) + chaineAj + chaine.substring(endPos, chaine.length);
} else {
myForm.value += chaineAj;
}
}

Il fait bien ce que je veux mais il fait n'importe quoi sous IE, il ajoute le texte au début, j'y connait pas grand chose en javascript, quelqu'un pourrai m'aider ?
0
Personne ? :(
0