![]() |
![]() |
|
![]() |
![]() |
|
Programmierung Rat & Tat für Programmierer |
![]() |
|
Themen-Optionen | Ansicht |
![]() |
#1 |
Senior Member
![]() |
![]() Hallo, ich hab mal wieder ein Problem:
Ich brauche ein Javascript, das gleich wie hier auf WCM Links in ein Formularobjekt einfügt. Ich hab leider so gut wie keine Ahnung von Java-Script, aber ich hab folgenden Code aus dem Quellcode vom WCM rausgelesen: <input type="button" class="bginput" value="http://" title="Internet Adresse einfügen" onclick="namedlink(this.form,'URL')" onmouseover="stat('url')" allerdings gibt es schon allein beim drüberfahren mit der maus die erste Fehlermeldung, "Objekt erforderlich" oder so. Weis jemand wie man so einen Button richtig macht? |
![]() |
![]() |
![]() |
#2 |
Inventar
![]() Registriert seit: 13.06.2001
Beiträge: 1.830
|
![]() Ohne den Wcm Quelltext zu kennen, würde ic es so machen. Ich muß mir erst noch überlegen wie man textfelder anspricht aber da kommm ich auch noch drauf.
P.S.: Die erste Zeile ist nicht notwendig, ist aber im w3c Standart vorgesehen. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <script language="JavaScript"> <!-- function linkmachen() { var linkadresse=prompt("Bitte Internetadresse eingeben","http://"); var linktext; linktext=prompt("Bitte geben Sie einen Text ein","") if (linktext=="") {linktext=linkadresse}; document.write("<a href=\"" + linkadresse + "\">" + linktext + "</a>"); } //--> </script> </head> <body> <input type="Button" value="Link einfügen" OnClick="linkmachen()"> </body> </html> Jak
____________________________________
Join the DNRC | Godwin\'s Law (thx@stona) Documentation is like sex: If it\'s good, it\'s very, very good. If it\'s bad, it\'s better than nothing. \"In theory, theory and practice are the same. In practice, they are not\" (Lawrence Berra) |
![]() |
![]() |
![]() |
#3 |
Inventar
![]() Registriert seit: 13.06.2001
Beiträge: 1.830
|
![]() Bin draufgekommen.
Folgende änderungen am oberen posting: alt document.write("<a href=\"" + linkadresse + "\">" + linktext + "</a>"); neu document.forms[0].elements[0].value= (document.forms[0].elements[0].value + ("<a href=\"" + linkadresse + "\">" + linktext + "</a>")); und nach dem button muß <form> <textarea rows="10" cols="20"></textarea> </form> stehen. Wenn du forms davor hast oder du elemente vor das textfeld setzt mußt du forms[0].elements[0] entsprechend ändern. Du kannst aber auch <form> und <textarea> benamsen. <textarea name="textfeld"> <form name="formular"> Dann kannst du das textfeld mit (z.B.) formular.textfeld ansprechen. Jak P.S.: Laut dem w3c Standart für html 4.0 hat das <form> element kein Attribut "name". Ich glaube aber, daß das trotzdem alle browser verstehen.
____________________________________
Join the DNRC | Godwin\'s Law (thx@stona) Documentation is like sex: If it\'s good, it\'s very, very good. If it\'s bad, it\'s better than nothing. \"In theory, theory and practice are the same. In practice, they are not\" (Lawrence Berra) |
![]() |
![]() |
![]() |
#4 |
Senior Member
![]() |
![]() Alles klar, Danke
|
![]() |
![]() |
![]() |
#5 |
Elite
![]() Registriert seit: 14.11.1999
Alter: 39
Beiträge: 1.429
|
![]() Ich habe gemäß den Code oberhalb versucht bei mir auch die Linkfunktion einzubauen, allerdings werfen der IE und Mozzi beide einen Error in Zeile 40:
Code:
<HTML> <HEAD> <link rel="stylesheet" href="STYLESHEET.CSS" type="text/css"><!-- <script language="JavaScript"> <!-- function link() { var linkadresse=prompt("Bitte Internetadresse eingeben","http://"); var linktext; linktext=prompt("Bitte geben Sie einen Text ein","") if (linktext=="") {linktext=linkadresse}; document.text.value= (document.text.value + ("[link=\'" + linkadresse + "\']>" + linktext + "[/link]")); } //--> </script> </HEAD> <BODY BGCOLOR="#000000" vlink="#00ff00" link="#00ff00" text="#ffffff"> <TABLE BORDER=0 WIDTH="780"><TD> <FORM NAME="formular" ACTION="newsupdate.asp" METHOD="post"> <INPUT TYPE="hidden" NAME="id" VALUE="4"> <DIV ALIGN="CENTER"> <TABLE BORDER=1 WIDTH=70%> <TBODY> <TR></TR> <TR><TD COLSPAN=2> <H1>Titel: <INPUT NAME="title" VALUE="Testbericht"></H1></TD> <TD ALIGN="RIGHT" WIDTH="1%"> <SPAN CLASS=bez> Datum:<INPUT NAME="date" VALUE="25.02.2004"> Autor:<INPUT NAME="author" VALUE="3of4"> </SPAN></TD> </TR> <TR><TD COLSPAN=3> <H4>Untertitel: <INPUT NAME="subtitle" VALUE="Bitte, Bitte lösch mich"></H4></TD></TR> <TR> <TD><SPAN CLASS=abs>1. Absatz: <TEXTAREA NAME="paragraph" COLS=40 ROWS=5>Ich bin ein Absatz, der nur dasteht, damit 3of4 die Bildfähigkeiten des Cms benutzen kann. Zb. sollte rechts von mir das Erste Bild stehen...</TEXTAREA></SPAN></TD> <TD ALIGN="center" VALIGN="top"> <input type="Button" value="Link einfügen" OnClick="link()"></TD><TD ROWSPAN="3"> Das Ändern oder Hinzufügen von Fotos ist erst nach Erstellung der Berichtes möglich. Diesbezüglich Beschwerden bitte an das Salzamt(Salzburg/Österreich). </TD> </TR><TR> <TD COLSPAN=2><SPAN CLASS=text>Text: <TEXTAREA NAME="text" cols=80 rows=20>Und ich bin der Haupttext, der aus dem selben Grund existiert... Links von mir müssten vier Miniaturansichten sein, welche auf die großen Bilder Verlinken... MfG ihr TestBeitrag</TEXTAREA> </SPAN></TD> </TR><TR> <TD>Externer Link<INPUT NAME="extlink" VALUE=""></TD> <TD>Photogallerie (id)<INPUT NAME="photos" VALUE=""></TD> </TR></TBODY> </TABLE> </DIV> <INPUT TYPE="submit" VALUE="senden"> </FORM> </TD></TABLE> </BODY> </HTML> |
![]() |
![]() |
![]() |
#6 |
Inventar
![]() Registriert seit: 13.06.2001
Beiträge: 1.830
|
![]() Der Fehler in Zeile 40 heißt nur, daß beim Aufrufen des Skripts link() irgendetwas schiefgelaufen ist. ich würde sagen, dieses irgendas hängt mit der Zeile
Code:
document.text.value= (document.text.value + ("[link='" + linkadresse + "']>" + linktext + "[/link]")); Ich würde es so machen: Die textarea text zu nennen ist eine schlechte idee, da JS versucht auf eine Eigenschaft von document mit dem namen text zuzugreifen. Die textarea liegt in der Hierarchie jedoch irgendwo in dem Array document.elements[i] . Dieses irgendwo herauszufinden geht so: Code:
<TEXTAREA id="meintext" cols=80 rows=20></textarea> Code:
document.getElementById("meintext").value+=("[link='" + linkadresse + "']>" + linktext + "[/link]")); Jak <edit> ("[link='" + linkadresse + "']>" + linktext + "[/link]")) ist vielleicht auch nicht so gut, da in JS ' ziemlich äquivalent zu " ist. Ich würde diese Zeile auch noch mal testen. </edit>
____________________________________
Join the DNRC | Godwin\'s Law (thx@stona) Documentation is like sex: If it\'s good, it\'s very, very good. If it\'s bad, it\'s better than nothing. \"In theory, theory and practice are the same. In practice, they are not\" (Lawrence Berra) |
![]() |
![]() |
![]() |
#7 |
Elite
![]() Registriert seit: 14.11.1999
Alter: 39
Beiträge: 1.429
|
![]() Nö, das Problem war weil ich das Javascript nicht als erstes im Head gehabt hab --> hab nicht gewusst dass das nötig war...
|
![]() |
![]() |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|