Inhalt vom Formfeld aus einem anderen ziehen...
Mortimer
- javascript
Hi
Ich habe 2 Formfelder:
1. formname=reply_msg mit einem textfeld (name=reply_content)
2. formname=clipboard mit einer inputzeile (name=clip_1)
Da es mehrere Inutfelder unter der Form CLIPBOARD gibt habe ich sie dynamisch von 1-x durchnummererien lassen.
Auf onclick soll das Script diese Funktion ausführen.
Es nimmt den wert aus der reply_content(textfeld) und aus der (clip_x) und soll sie zusammenfügen...
Leider erkennt mein Script nicht AddClip als variabel an...
Wie muss ich das in der Zeile (steht unten FEHLER dran) schreiben damit er die variabel übernimmt ?
function ClipTo(AddClip) {
var AddClip;
var revisedMessage;
var currentMessage = document.reply_msg.reply_content.value;
var ClipperMessage = document.clipboard."AddClip".value; <<<<<<---FEHLER! =/
revisedMessage = currentMessage+ClipperMessage;
document.reply_msg.reply_content.value=revisedMessage;
document.reply_msg.reply_content.focus();
return;
}
ciao
hi,
Wie muss ich das in der Zeile (steht unten FEHLER dran) schreiben damit er die variabel übernimmt ?
http://selfhtml.teamone.de/javascript/objekte/elements.htm#allgemeines
gruss,
wahsaga
http://selfhtml.teamone.de/javascript/objekte/elements.htm#allgemeines
Ich weiss nicht ob es das richtige für mich ist... ich gebe die inputfelder Dynamisch aus! =/
Da wird das durchzählen nachher bei der Ausgabe unsinnig...
Gibt es denn keinen Weg dass man sagt dass er sich den Elementnamen aus der Variabel holt die ich ihm übermittelt habe? =/
quasi in PHP hiesse dass..
function ($id) {
$elementnummer = "formularname_".$id."_value";
#Liefert z.B.: formularname_3_value
}
ciao
Hallo Mortimer,
function ClipTo(AddClip) {
Hier definierst Du eine neue Variable AddClip, die den Übergabeparameter überschreibt:
var AddClip;
Lass diese Zeile einfach weg.
var revisedMessage;
var currentMessage = document.reply_msg.reply_content.value;
var ClipperMessage = document.clipboard."AddClip".value; <<<<<<---FEHLER! =/
var ClipperMessage = document.clipboard.elements["AddClip"].value;
(Im von Wahsager verlinkten Artikel steht nicht deutlich genug, dass das auch mit einem Feldnamen, und nicht nur mit der Nummer funktioniert.)
return;
Das return am Ende der Funktion kannst Du auch weglassen, wenn die Funktion keinen Wert zurückgibt.
Grüße
Andreas
Hallo nochmal,
var ClipperMessage = document.clipboard.elements["AddClip"].value;
var ClipperMessage = document.clipboard.elements[AddClip].value;
Grüße
Andreas
DANKE! =)
*freut sich dass es nun geht*
... Danke für die wirklich gute hilfe =)
Ich werd dich auf der Bühne erwähnen wenn ich mal ne Auszeichnung bekomme =)
ciao!
Ich habe mich wohl zu früh gefreut:
er nennt mir als Fehler "dcoument.clipboard.elements[...] ist NULL oder kein objekt" =/
Der gesamte Code:
<html>
<head>
<title>Unbenanntes Dokument</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<script language="JavaScript" type="text/JavaScript">
function x () {
return;
}
function ClipTo(AddClip) {
var RevisedMessage;
var CurrentMessage = document.reply_msg.reply_content.value;
var ClipperMessage = document.clipboard.elements[AddClip].value;
RevisedMessage = CurrentMessage+ClipperMessage;
document.reply_msg.reply_content.value=revisedMessage;
document.reply_msg.reply_content.focus();
}
/*
var AddClip;
var revisedMessage;
var currentMessage = document.reply_msg.reply_content.value;
revisedMessage = currentMessage+AddClip;
document.reply_msg.reply_content.value=revisedMessage;
document.reply_msg.reply_content.focus();
return;*/
</script>
<form name="reply_msg" action="" method="post">
<textarea name="reply_content" cols="50" rows="8"></textarea>
</form>
<form name="clipboard" action="" method="post">
<p><a onclick="ClipTo(clip_1);" href="javascript: x()">link</a></p>
<input type="hidden" name="clip_1" value="test123">
</form>
</body>
</html>
wieso? =/
ciao
Hallo Mortimer,
er nennt mir als Fehler "dcoument.clipboard.elements[...] ist NULL oder kein objekt" =/
<p><a onclick="ClipTo(clip_1);" href="javascript: x()">link</a></p>
Klar, denn Du übergibst eine Referenz auf das Objekt clip_1 und nicht den Namen des Objekts als String an die Funktion.
Grüße
Andreas