PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : input type="text"


Marilu
24.08.2004, 12:49:23
Hi *.*,

ich möchte gerne in einem Eingabefeld Text bzw. Ziffern in Form einer Maske eingeben (hier die Kreditkarten-Nr. im Format 1234-1234-1234-1234).
Ist sowas in einem Feld realisierbar oden muß ich hier mit 4 Input-Feldern arbeiten?

Thx, Marilu

xabbuh
24.08.2004, 13:05:59
Vielleicht hilft dir dieses JavaScript weiter:


<script type="text/javascript">
<!--
function mask()
{
var f = document.form.creditCardNo.value;
if(f.length == 4 || f.length == 9 || f.length == 14) {
f += "-";
}
}
//-->
</script>

<form name="form">
<input type="text" name="creditCardNo" onKeyDown="mask()">
</form>

Marilu
24.08.2004, 13:37:36
@xabbuh

Vielen Dank, interessanter Ansatz. Eine Zeile muß noch rein:

...
f += "-";
document.form.creditCardNo.value = f;
...

Ich habe jetzt noch Probleme beim Editieren des Feldes, aber ich denke, das kreige ich hin.

Greetz, Marilu

Marilu
24.08.2004, 14:02:24
@xabbuh

Hier die endgültige Funktion:

function mask()
{
var f = document.form.creditCardNo.value ;
if(f.length == 4 || f.length == 9 || f.length == 14) {
k = window.event.keyCode;
if(k >= 48 && k <= 57) {
f += "-";
document.form.creditCardNo.value = f;
}
}
}

Greetz, Marilu