WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 07.09.2001, 20:28   #1
st0ne
Senior Member
 
Registriert seit: 09.08.2001
Alter: 42
Beiträge: 176


st0ne eine Nachricht über ICQ schicken
Standard Links per Button ins Formular=

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?
st0ne ist offline   Mit Zitat antworten
Alt 08.09.2001, 14:20   #2
jak
Inventar
 
Registriert seit: 13.06.2001
Beiträge: 1.830


Standard

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)
jak ist offline   Mit Zitat antworten
Alt 08.09.2001, 14:28   #3
jak
Inventar
 
Registriert seit: 13.06.2001
Beiträge: 1.830


Standard

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)
jak ist offline   Mit Zitat antworten
Alt 08.09.2001, 15:20   #4
st0ne
Senior Member
 
Registriert seit: 09.08.2001
Alter: 42
Beiträge: 176


st0ne eine Nachricht über ICQ schicken
Standard

Alles klar, Danke
st0ne ist offline   Mit Zitat antworten
Alt 11.03.2004, 20:38   #5
3of4
Elite
 
Registriert seit: 14.11.1999
Alter: 39
Beiträge: 1.429


Standard sorry wenn ich uralte Themen aufwärme, aber das ist genau das was ich brauch...

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>
Der Fehler (Objekt erwartet) wird in Zeile 40 (Die Zeile wo <input type="button"...> steht), Zeichen 1 gemeldet, aber ich habe keine Ahnung wo da was falsch sein sollte...
____________________________________
Resistantium est futilius
3of4 ist offline   Mit Zitat antworten
Alt 12.03.2004, 07:29   #6
jak
Inventar
 
Registriert seit: 13.06.2001
Beiträge: 1.830


Standard

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]"));
zusammen.
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>
und der Aufruf im JS geht dann mit
Code:
document.getElementById("meintext").value+=("[link='" + linkadresse + "']>" + linktext + "[/link]"));
(a+=b ist eine Kurzschreibweise für a=a+b)

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)
jak ist offline   Mit Zitat antworten
Alt 12.03.2004, 11:26   #7
3of4
Elite
 
Registriert seit: 14.11.1999
Alter: 39
Beiträge: 1.429


Standard

Nö, das Problem war weil ich das Javascript nicht als erstes im Head gehabt hab --> hab nicht gewusst dass das nötig war...
____________________________________
Resistantium est futilius
3of4 ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 23:28 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag