kleines problem mit Formular

VIPbanner_de

www.VIPbanner.de
ID: 72674
L
1 Mai 2006
2.598
150
möchte einen Counter haben der die zeichen die der user in ein Formular eingibt zählt. Der Counter soll von 130 auf 0 Runterzählen und soll dann jede weitere eingabe in dem Formular blockieren.

Das ganze wird in PHP ausgegeben


PHP:
<tr align=\"left\">
    <td valign=\"top\"><font size=\"2\"><b>SMS Text</b></font><br><br><input name=\"remLen\" type=\"text\" id=\"remLen\" value=\"130\" size=\"3\" maxlength=\"3\" readonly /> Zeichen noch</span></td>
    <td>
     <textarea name=\"text\" rows=\"6\" cols=\"60\" onkeydown=\"textCounter(this.form.text, this.form.remLen,130);\" onkeyup=\"textCounter(this.form.text, this.form.remLen,130);\"></textarea>
</font>
</td>
   </tr>

Der eine Slash beim Align oben wird vom Forum aus nicht angezeigt, ist aber vorhanden.

Das ganze ist eine Textarea. Vor dieser ist der Counter als input und zählt runter. Und das funktioniert nicht so ganz...
 
beim googlen gefunden und angepasst:

HTML:
<script language="JavaScript">
<!--
function CountMax()
{
var wert,max;
max = 130;
wert = max-document.Formular.text.value.length;
if (wert < 0) {
alert("Die Eintraglänge ist auf " + max + " Zeichen begrenzt!");
document.Formular.text.value = document.Formular.text.value.substring(0,max);
wert = max-document.Formular.text.value.length;
document.Formular.rv_counter.value = wert;

} else {
document.Formular.rv_counter.value = max - document.Formular.text.value.length;
}
}
//-->
</script>



<form name='Formular'>
 <textarea name="text" rows="10" cols="60" OnFocus="CountMax();" OnClick="CountMax();" ONCHANGE="CountMax();" onKeydown="CountMax();" onKeyup="CountMax();"></textarea>

Verbleibende Zeichen: <input name="rv_counter" type="TEXT" size="4" maxlength="3" value="130" readonly>
</form>
 
Bei
Code:
[FONT="Courier New"] OnKeydown="CountMax();" OnKeyup="CountMax();"[/FONT]
ist imo schon mal eine Redundanz drin. Mich würde eine Alert beim KeyDown und beim KeyUp durchaus nerven. (OnKeyUp ist wohl das sinnvollere...)
 
beim googlen gefunden und angepasst:

HTML:
<script language="JavaScript">
<!--
function CountMax()
{
var wert,max;
max = 130;
wert = max-document.Formular.text.value.length;
if (wert < 0) {
alert("Die Eintraglänge ist auf " + max + " Zeichen begrenzt!");
document.Formular.text.value = document.Formular.text.value.substring(0,max);
wert = max-document.Formular.text.value.length;
document.Formular.rv_counter.value = wert;

} else {
document.Formular.rv_counter.value = max - document.Formular.text.value.length;
}
}
//-->
</script>



<form name='Formular'>
 <textarea name="text" rows="10" cols="60" OnFocus="CountMax();" OnClick="CountMax();" ONCHANGE="CountMax();" onKeydown="CountMax();" onKeyup="CountMax();"></textarea>

Verbleibende Zeichen: <input name="rv_counter" type="TEXT" size="4" maxlength="3" value="130" readonly>
</form>

Das gleiche wie bei mir.. das script wird ignoriert.. als wäre es gar nicht da.. der input mit den 130 zeichen steht da.. aber der zählt nicht runter.. und ich kann mehr wie 130 Zeichen in der textarea schreiben
 
hö? also bei mir funzt das.
dumme (wahrscheinlich oberblöde frage *g) aber javascript aktiviert?

ich hab dein posting kopiert, und getestet, da ging nix. mit meinem hats (zumindest bei mir geklappt)
 
ja java script ist aktiviert. ich denke aber das wird anders gestört. Die Datei in der mein Script drin ist hab ich dir mal geschickt gehabt wegen eines anderen Problems. vielleicht kannste mal gucken @delicious.

Ich habe das gleiche Formular auf einer anderen domain eingesetzt und da funktioniert das einwandfrei.