Avatar billede michaelb.dk Nybegynder
05. december 2003 - 11:31 Der er 23 kommentarer og
1 løsning

Knap overfører tekst til textarea!

Hvis i kigger her: http://dummeslag.dk/2/index2.php?pn=detail&id=2 og prøver at klikke på én af smiley'erne eller på B, Img, U, Url, Italic eller Quote kommer der "en fejl på siden" i stedet for at der tilføjet f.eks. "[B]Text[/B]" (ved klik på B) eller ":angry:" (ved klik på den første smiley).

Har i et hurtigt script til hvordan dette køres korrekt så jeg ka få det til at virke?
Avatar billede o-zone Nybegynder
05. december 2003 - 11:46 #1
Er det noget i retning af det her du søger?

<input type="button" value="[B]" onclick="this.form.text.value = this.form.text.value+'[B]Text[/B]'">

princippet er det samme for alle knapperne og smileyerne!
(-:H@zze
Avatar billede mm12010 Nybegynder
05. december 2003 - 11:47 #2
function setSmilie(smilie){
var f = document.forms[0];
f.text.value += smilie;
f.focus();
}
Avatar billede o-zone Nybegynder
05. december 2003 - 11:52 #3
I øvrigt appender den der kode bare tagget til teksten. Dvs. hvis folk står midt i teksten og trykker på knapperne, så ender tagget i slutningen af teksten!

i øvrigt kommer den første smiley til at se således ud (billederne er en lille smule anderledes, fordi de ikke er formelementer):
<img src="images/smilies/angry.gif" border="0" onclick="document.form1.text.value = document.form1.text.value+':angry:'">

forudsat at du navngiver din form således:
<form name="form1" method="POST" action="admin.php?pn=addcomment&id=2">

(-:H@zze
Avatar billede o-zone Nybegynder
05. december 2003 - 11:56 #4
mm12010's svar er efter samme princip som mit, så skal du bare skrive
... onclick="setSmiley(':angry:')"... i stedet for.
Avatar billede mm12010 Nybegynder
05. december 2003 - 12:04 #5
o-zone >> har du kigget i kilde på hans side? det er jo det han gør, hans funtion refferede bare til forms[1]
Avatar billede michaelb.dk Nybegynder
05. december 2003 - 12:23 #6
kan i ikke komme med en færdig kode?

<form name....>
<textarea.......></textar...>
<input type........>
</form..>
Avatar billede michaelb.dk Nybegynder
05. december 2003 - 13:16 #7
....jeg kan nemlig ikke få det til at passe, ellers!
Avatar billede michaelb.dk Nybegynder
05. december 2003 - 13:19 #8
mm12010 > står det der i min kode? i så fald, hvor
Avatar billede mm12010 Nybegynder
05. december 2003 - 13:26 #9
linie 112-119
Avatar billede michaelb.dk Nybegynder
05. december 2003 - 13:33 #10
mm nej !??
Avatar billede mm12010 Nybegynder
05. december 2003 - 13:52 #11
øhhh? jo :o)

der står:

function setSmilie(smilie){
var f = document.forms[1];
f.text.value += smilie;
f.focus();
}

i dín kode - det skal rettes til:

function setSmilie(smilie){
var f = document.forms[0];
f.text.value += smilie;
f.focus();
}
Avatar billede michaelb.dk Nybegynder
05. december 2003 - 13:54 #12
men det står ikke på linie 112-119
Avatar billede mm12010 Nybegynder
05. december 2003 - 14:01 #13
ok - men det er i hvert fald i den kodestump problemet ligger :o)
Avatar billede michaelb.dk Nybegynder
05. december 2003 - 15:04 #14
mit problem er så bare at jeg ikke kan finde kodestumpen! :)
Avatar billede o-zone Nybegynder
05. december 2003 - 17:58 #15
den er god nok! Herfra ser det ud til at være på linie 226-230, men du kan vel bare søge dokumentet igennem på f.eks. "function setSmilie" :)

mm12010>>> nej, jeg fik ikke kikket koden nok igennem, inden jeg svarede, det ser vist rigtigt nok ud, at han bare skal ændre forms[1] til forms[0] :)

michaelb.dk>>>giv pointene til mm12010 - han har ret!

God Jul (-:H@zze
Avatar billede mm12010 Nybegynder
05. december 2003 - 18:29 #16
o-zone >> ilm :o)

michaelb.dk >> hvis du stadig ikke kan finde det, kan poste hele din kode her, så skal jeg rette det for dig
Avatar billede michaelb.dk Nybegynder
05. december 2003 - 18:52 #17
jamen ingen steder i mine filer står der "forms[1]" :S !!!!
Download selv systemet og se efter :)
http://www.ppopn.net/work/ppopn/index.php?script=pdown&pdown=clear&pd=download&id=2
Avatar billede mm12010 Nybegynder
05. december 2003 - 19:30 #18
er dette ikke linie 220-240 fra din kode ?


  <td height="13" background="http://dummeslag.dk/2/bodybg.gif"><center><b>Indhold</b></center></td>
  </tr>
  </table>
  <table width="100%"><tr><td>
<head>
<SCRIPT LANGUAGE="JavaScript">
        function setSmilie(smilie){
          var f = document.forms[1];
          f.text.value += smilie;
          f.focus();
          }
        //-->
        </SCRIPT></head><div align="center">
  <center>
  <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="80%">
    <tr>
      <td width="5%" bgcolor="#D4D4D4"><center><a href="index2.php?pn=view&sort_kat=1"><img border="0" alt="Information" src="images/kat/info.gif"></a></center>
      </td>
      <td width="95%" bgcolor="#D4D4D4" colspan="2"><p align="center">
      <font color="#000000">
      <b>Defekt firewall</b></font><br>Af <a href="mailto:michael@michaelb.dk?subject=Defekt firewall">Admin</a> d. 30.11.2003 kl. 18:22
Avatar billede o-zone Nybegynder
05. december 2003 - 20:16 #19
i filen functions.php linie 280 står der
var f = document.forms[$java_s];

Jeg vil vædde en hatfuld sne på at det er variablen $java_s der fejlagtigt bliver sat til 1.

Det er et færdigt produkt du arbejder med - har du evt. fjernet en <form> undervejs, som dem der har udviklet systemet har regnet med eksisterede?
Avatar billede mm12010 Nybegynder
05. december 2003 - 20:18 #20
o-zone >> lige mine ord!-)
Avatar billede michaelb.dk Nybegynder
05. december 2003 - 21:09 #21
Ikke umiddelbart! Selvom jeg uploader helt fra ny, og på tysk ;-) , sættes den stadig til 1!

Hmm, hvorfor skal den egentlig stå på 0 !? Er det ikke noget man kan ændre på så den gerne må stå på 1 - ja hva, ved jeg!?
Avatar billede o-zone Nybegynder
05. december 2003 - 21:48 #22
0 betyder den første <form> på siden. Du kan selvfølgelig indsætte en <form></form> foran den rigtige form - det vil gøre den rigtige form til nummer 2 (og altså med indextal 1) ;-)

I øvrigt er det en uskik at angive elementer udelukkende efter deres index nummer, for hvis man så ændrer en lille smule på rækkefølgen (f.eks. hvis du senere finder ud af at du gerne vil have en lille søg-på-sitet form øverst på siden, så rykker alle indextallene ned. :-(

Det man bør gøre i stedet er at bruge name tagget til at navngive elementerne.

Så i stedet for form[0] burde der f.eks. har stået form["skrivEtIndlaegForm"]
Og så skulle formen have heddet <form name="skrivEtIndlaegForm" method="post" action="yadayadayada">

Havde de tyske programmører nu lavet det sådan, ville vi have sluppet for alle disse problemer! :P~

Jeg skal ikke kunne sige hvor mange steder den funktion der bliver defineret i functions.php bliver brugt, endsige hvor $java_s kommer fra (jeg orker ikke at sætte mig ind i en masse pis lige nu!), men du kunne jo prøve at hardkode dit 0 ind - eller endnu bedre ændre det til $java_s-1, og se om skidtet stadig virker efter det stunt (men husk at teste alle hjørner af systemet).

Jeg kan ikke generelt anbefale at slibe andres systemer til på den måde, uden at have overblik over konsekvenserne (men jeg går ikke ud fra at det er critical rocket science du skal bruge det til?). Men det kunne jo være at tyskerne har glemt at indsætte en <form> et sted, eller incrementere $java_s - og så vil du formegentlig slippe godt fra at skrive:
var f = document.forms[($java_s-1)];
i linie 280

Prøv det engang, og se hvad der sker! Hvis skidtet crasher, så ændr det tilbage, og vent til nogen fra eksperten eller andre steder gider at sætte sig ind i hvad det er der går galt! :-)

(-:H@zze
Avatar billede michaelb.dk Nybegynder
06. december 2003 - 11:45 #23
Prøvede først med <form></form> i toppen og yep, det virkede! Prøvede bagefter at smide linien "var f = document.forms[($java_s-1)];" ind i functions.php - det ser også ud til at virke!

Tak for hjælpen så :)
Michael
Avatar billede michaelb.dk Nybegynder
06. december 2003 - 11:46 #24
lige en sidste ting til dig o-zone hvis du kan finde det sted hvor jeg kan ændre i hvilke smileys der skal være på forsiden (der hvor man kan klikke dem ind) for jeg kan ikke???
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