Avatar billede gadebarnet Nybegynder
15. maj 2005 - 19:20 Der er 12 kommentarer

textbox og script

Jeg har denne tekst i et textarea:

---
Hej kurt

Du er en dejlig gris
---

Der skal så være et input felt hvor man kan skrive et andet navn end kurt, men den skal bevare den tekst der allerede står i textarea... Og det skal ske dynamisk... HVORDAN ???
Avatar billede roenving Novice
15. maj 2005 - 19:23 #1
Skal den ellers bevare teksten ?-)
Avatar billede gadebarnet Nybegynder
15. maj 2005 - 19:38 #2
jeps...

Og det er der jeg tilter...
Avatar billede roenving Novice
15. maj 2005 - 20:05 #3
F.eks. sådan:

<form id="minForm" name="minForm">
<input id="minInput" name="minInput" type="text" value="Tom" onfocus="if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.defaultValue;" size="20">
<br>
<textarea name="mitTextarea" id="mitTextarea" cols="40" rows="5">Hej kurt

Du er en dejlig gris</textarea>

<button name="button2" id="button2" onclick="this.form.mitTextarea.value=this.form.mitTextarea.value.replace(/kurt/mig,this.form.minInput.value);return false;">En ny knap!</button>

</form>
Avatar billede gadebarnet Nybegynder
15. maj 2005 - 21:25 #4
Den skal ske uden tryk på knapper...

Den skal gøre det ved hver taste tryk... og så skal det kunne køre heletiden... hvis man nu har ændret eengang, så kan man ikke mere.
Avatar billede roenving Novice
15. maj 2005 - 21:35 #5
Tjah, den havde jeg ikke gættet på, men så f.eks. sådan:

<script language="javascript" type="text/javascript">
var txt;
function repl(elm){
  if(txt == "")
    return;
  elm.form.mitTextarea.value = txt.replace(/kurt/mig, elm.value);
}
</script>


<form id="minForm" name="minForm">
<input id="minInput" name="minInput" type="text" value="Tom" onkeyup="repl(this);" onfocus="txt=this.form.mitTextarea.value;if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.defaultValue;" size="20">

<textarea name="mitTextarea" id="mitTextarea" cols="40" rows="5">Hej kurt

Du er en dejlig gris, kurt</textarea>
</form>
Avatar billede gadebarnet Nybegynder
15. maj 2005 - 21:39 #6
den tilter stadigvæk...
Avatar billede roenving Novice
15. maj 2005 - 21:41 #7
Hvordan ?-)
Avatar billede jobdollas Nybegynder
15. maj 2005 - 22:08 #8
hvis du skriver noget i tekstfeltet og derefter prøver at skifte navn igen, så tilter den...
Avatar billede roenving Novice
15. maj 2005 - 22:13 #9
Jepz, men så kan man:

<script language="javascript" type="text/javascript">
var txt;
function repl(elm){
  if(txt == "")
    return;
  elm.form.mitTextarea.value = txt.replace(/kurt/mig, elm.value);
}
window.onload = function(){
  txt=document.forms[0].mitTextarea.value;
}
</script>

<form id="minForm" name="minForm">
<input id="minInput" name="minInput" type="text" value="Tom" onkeyup="repl(this);" onfocus="if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.defaultValue;" size="20">

<textarea name="mitTextarea" id="mitTextarea" cols="40" rows="5">Hej kurt

Du er en dejlig gris, kurt</textarea>
</form>

-- men et eller andet sted er der vel også en grænse for, hvor mange tåbeligheder man skal tage højde for ...
Avatar billede gadebarnet Nybegynder
15. maj 2005 - 22:30 #10
den skulle jo gerne også opdatere på et backspace... og så skal navnet kun stå der i hej .... og så skal det der kommer efter hej være tomt til at starte med...
Avatar billede roenving Novice
15. maj 2005 - 22:32 #11
Prøv lige at sammenligne det, du mener at have brug for, med det du skrev i starten ???
Avatar billede gadebarnet Nybegynder
15. maj 2005 - 22:35 #12
hvad for noget?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester