Moin,
folgendes, durch ein JavaScript lasse ich einen Wert in ein Feld schreiben, in diesem fall ist es eine Kundennummer.
Wenn man jetzt allerdings mehr als einmal auf den Link klickt, dann wird auch der Wert, also die Kundennummer mehrfach ins Feld eingetragen.
Das Feld ist ein ganz normales Input Feld.
Frage: Wie müßte das Script aussehen, damit es die Kundennummer bei erneutem Klick löscht und die neue Kundennummer einträgt?
Für eine Anregung wäre ich dankbar.
Folgende JavaScripts nutze ich hierfür:
Das ganze wird ins Formular (name="theform") in das Input-Feld
id="textout" "gespeichert.
Der Aufruf via Link sieht so aus:
Hier wäre es auch schon, wenn ich es direkt aus einem Formular-Eelement (Drop-Down-Box) via anklicken übergeben könnte, statt als Link.
Falls jemand eine einfache Möglichkeit hat, bin ich auch hierfür dankbar, das Problem ist nur, das die Kundennummer, als der Wert aus einem POPUP Fenster kommt und dann ins Formular via Klick eingetragen werden soll, ohne das man es via Copy & Paste einfügen muß.
P.S.: Ist natürlich kein PHP-Code, aber mit der Funktion (PHP) und (/php) sieht es einfach übersichtlicher hier aus
folgendes, durch ein JavaScript lasse ich einen Wert in ein Feld schreiben, in diesem fall ist es eine Kundennummer.
Wenn man jetzt allerdings mehr als einmal auf den Link klickt, dann wird auch der Wert, also die Kundennummer mehrfach ins Feld eingetragen.
Das Feld ist ein ganz normales Input Feld.
Frage: Wie müßte das Script aussehen, damit es die Kundennummer bei erneutem Klick löscht und die neue Kundennummer einträgt?
Für eine Anregung wäre ich dankbar.
Folgende JavaScripts nutze ich hierfür:
PHP:
function copykundenummer(wert)
{
getActiveText();
var Addwert = ""+wert+"";
AddText(wert);
}
PHP:
function getActiveText(){
setfocus();
if ((is_ie && !document.selection) || !document.selection)
{
return false;
}
var sel = document.selection;
var rng = sel.createRange();
if (rng != null && (sel.type == "Text" || sel.type == "None"))
{
text = rng.text;
}
if (rng != null && theform.textout.createTextRange)
{
theform.textout.caretPos = rng.duplicate();
}
return true;
}
PHP:
function AddText(NewCode) {
if (typeof(theform.textout.createTextRange) != "undefined" && theform.textout.caretPos)
{
var caretPos = theform.textout.caretPos;
caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ''? NewCode +'' : NewCode;
caretPos.select();
}
else if (theform.textout.selectionStart || theform.textout.selectionStart == '0')
{ // its mozilla and we'll need to re-write entire text
delete textout;
var start_selection = theform.textout.selectionStart;
var end_selection = theform.textout.selectionEnd;
// fetch everything from start of text area to selection start
var start = (theform.textout.value).substring(0, start_selection);
// fetch everything from start of selection to end of selection
var middle = NewCode;
// fetch everything from end of selection to end of text area
var end = (theform.textout.value).substring(end_selection, theform.textout.textLength);
theform.textout.value = start + middle + end;
setfocus();
theform.textout.selectionStart = end_selection + middle.length;
theform.textout.selectionEnd = start_selection + middle.length;
getActiveText();
AddTxt = "";
return;
}
else
{
theform.textout.value += NewCode;
}
setfocus();
getActiveText();
AddTxt = "";
}
PHP:
function setfocus()
{
theform.textout.focus();
}
Das ganze wird ins Formular (name="theform") in das Input-Feld
id="textout" "gespeichert.
Der Aufruf via Link sieht so aus:
PHP:
<a href="#" onclick="opener.copykundenummer('10000'); self.focus(); return false;">10120</a>
Hier wäre es auch schon, wenn ich es direkt aus einem Formular-Eelement (Drop-Down-Box) via anklicken übergeben könnte, statt als Link.
Falls jemand eine einfache Möglichkeit hat, bin ich auch hierfür dankbar, das Problem ist nur, das die Kundennummer, als der Wert aus einem POPUP Fenster kommt und dann ins Formular via Klick eingetragen werden soll, ohne das man es via Copy & Paste einfügen muß.
P.S.: Ist natürlich kein PHP-Code, aber mit der Funktion (PHP) und (/php) sieht es einfach übersichtlicher hier aus