27. november 2001 - 17:48
Der er
4 kommentarer og 1 løsning
Script ifb. med <input>
Jeg har en række <input>\'s i en <form>. Hvis jeg f.eks. skriver \"Ole Bent\" i et <input>, vil jeg gerne have, at der står \"Ole Bent\" i toppen af dokumentet, lige så snart, at jeg har ændret <input>. Jeg er klar over, at jeg formentlig skal bruge onchange=\"script\", men skal jeg herefter angive et <script> og hvordan og hvorledes? Jeg savner et eksempel!
Annonceindlæg fra gavdi
27. november 2001 - 18:03
#1
Følgende eksempel virker i IE: <html> <head> <script> function skrivTilTop(msg){ topDIV.innerHTML = msg; } </script> </head> <body> <div id=topDIV></div> <input type=text onkeypress=\"skrivTilTop(this.value)\" onkeyup=\"skrivTilTop(this.value)\" onkeychange=\"skrivTilTop(this.value)\"> </body> </html>
27. november 2001 - 18:09
#2
Følgende virker muligvis også i Netscape: <html> <head> <script> function skrivTilTop(msg){ form1.output.value = msg; } </script> </head> <body> <form name=\"form1\" method=\"post\" action=\"\"> <input type=\"text\" name=\"output\" style=\"width:100%; border:0px solid #FFFFFF;\"> </form> <form name=\"form2\" method=\"post\" action=\"\"> <input type=\"text\" name=\"input\" onkeypress=\"skrivTilTop(this.value)\" onkeyup=\"skrivTilTop(this.value)\" onkeychange=\"skrivTilTop(this.value)\"> </form> </body> </html>
27. november 2001 - 18:11
#3
Det virker da meget fint...men jeg bliver nødt til lige at have lidt forklaring, for at jeg kan bruge det til noget nyttigt. Problemet er, at jeg ved udfyldelse af 8 enkelte input, gerne vil have denne data udfyldt i 8 gange 12 andre celler i en tabel. Kan man kalde det samme script fra 12 forskellige steder? Hvad gør den der <div id=topDIV></div> i øvrigt?
27. november 2001 - 18:29
#4
Ja med lidt modifikationer kan du selv definere tekstens target. <div id=topDIV></div> er bare der teksten bliver outputtet, men så vidt jeg ved understøtter Netscape ikke innerHTML/innerText så det første eksempel er nok ikke så godt at bruge. Du kunne også skrive følg. istedet for: <table> <tr> <td id=topDIV></td> </tr> </table> <html> <head> <script> function skrivTilTop(msg, target){ eval(target); target.value = msg; } </script> </head> <body> <form name=\"outputform1\" method=\"post\" action=\"\"> <input type=\"text\" name=\"output1\" style=\"width:100%; border:0px solid #FFFFFF;\"> </form> <form name=\"outputform2\" method=\"post\" action=\"\"> <input type=\"text\" name=\"output1\" style=\"width:100%; border:0px solid #FFFFFF;\"> </form> <form name=\"inputform1\" method=\"post\" action=\"\"> <input type=\"text\" name=\"input1\" onkeypress=\"skrivTilTop(this.value,outputform1.output1)\" onkeyup=\"skrivTilTop(this.value,outputform1.output1)\" onkeychange=\"skrivTilTop(this.value,outputform1.output1)\"> <input type=\"text\" name=\"input2\" onkeypress=\"skrivTilTop(this.value,outputform2.output1)\" onkeyup=\"skrivTilTop(this.value,outputform2.output1)\" onkeychange=\"skrivTilTop(this.value,outputform2.output1)\"> </form> </body> </html>
27. november 2001 - 23:18
#5
Hejza Så er der point på vej! Jeg fik det omsider til at virke. Jeg ville have det ind i en <table>, men fandt efter lang tid ud af, at man ikke kan bruge name=\"\" i <table>\'s. Så jeg valgte følgende løsning, hvilken virker fint: <table> <tr> <td id=topDIV></td> </tr> </table> <html> <head> <script> function skrivTilTop(msg, target){ eval(target); target.value = msg; } </script> </head> <body> <form name=\"outputform1\" method=\"post\" action=\"\"> <table border=\"1px\"> <tr> <td>felt1 <input type=\"text\" name=\"output1\" style=\"width:100%; border:1px solid #FFFFFF;\"> </td> <td>felt2 <input type=\"text\" name=\"output2\" style=\"width:100%; border:1px solid #FFFFFF;\"> </td> </tr> </table> </form> <form name=\"inputform1\" method=\"post\" action=\"\"> <input type=\"text\" name=\"input1\" onkeypress=\"skrivTilTop(this.value,outputform1.output1)\" onkeyup=\"skrivTilTop(this.value,outputform1.output1)\" onkeychange=\"skrivTilTop(this.value,outputform1.output1)\"> <input type=\"text\" name=\"input2\" onkeypress=\"skrivTilTop(this.value,outputform1.output2)\" onkeyup=\"skrivTilTop(this.value,outputform1.output2)\" onkeychange=\"skrivTilTop(this.value,outputform1.output2)\"> </form> </body> </html>
Vi tilbyder markedets bedste kurser inden for webudvikling