/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
css-valideringsfejl
Fra : Erik Ginnerskov


Dato : 26-11-04 00:48

Hej NG
Jeg har et text-area, hvor jeg ved indsættelse af et javascript skulle
begrænse mængden af tekst, der kan skrives i feltet:

<textarea name="input" rows="4" cols="40"
onkeypress="return(this.value.length<500)"></textarea>

http://jigsaw.w3.org/css-validator kan ikke li' tegnet < i parentesen.
hvordan kan det så laves, så der defineres en grænse - og så css kan
validere?

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://ginnerskov.frac.dk



 
 
Martin Hintzmann And~ (26-11-2004)
Kommentar
Fra : Martin Hintzmann And~


Dato : 26-11-04 01:28

Erik Ginnerskov wrote:
> Jeg har et text-area, hvor jeg ved indsættelse af et javascript skulle
> begrænse mængden af tekst, der kan skrives i feltet:
>
> <textarea name="input" rows="4" cols="40"
> onkeypress="return(this.value.length<500)"></textarea>
>
> http://jigsaw.w3.org/css-validator kan ikke li' tegnet < i parentesen.
> hvordan kan det så laves, så der defineres en grænse - og så css kan
> validere?
>

Ved at adskilde indhold (XHTML) og funktionalitet (JavaScript).

Lav et eksternt javascript hvor du sætter alle events på din side.

Eksempel:

function init() {
var oForm = document.forms["FORMENSNAVN"];
if (oForm) {
var oFelt = oForm.elements["FELTETSNAVN"];
if (oFelt) {
oFelt.onkeypress = function() {
return (this.value.length<500);
}
}
}
}
window.onload = init;

Alle if'erne er blot for at tjecke om form og feltet nu engang er på
siden. Du udvider den selvfølgelig hvis du har flere felter som skal
have noget funktionalitet.


--
Martin Hintzmann Andersen
http://www.hintzmann.dk/

Erik Ginnerskov (26-11-2004)
Kommentar
Fra : Erik Ginnerskov


Dato : 26-11-04 13:47

Martin Hintzmann Andersen wrote:

> Lav et eksternt javascript hvor du sætter alle events på din side.
>
> Eksempel:
>
> function init() {
> var oForm = document.forms["FORMENSNAVN"];
> if (oForm) {
> var oFelt = oForm.elements["FELTETSNAVN"];
> if (oFelt) {
> oFelt.onkeypress = function() {
> return (this.value.length<500);
> }
> }
> }
> }
> window.onload = init;

Mange tak. Det fungerer (begrænsningen) og det validerer. Så kom jeg på et
tillægsspørgsmål:

Man ser undertiden et textarea, hvor input er begrænset, og hvor der på
siden løbende rapporteres tilbage til brugeren, hvor mange tegn mere, der
kan skrives. Jeg burde have kigget bag om, men tænkte ikke på det ved den
lejlighed. Men kan det laves clientside eller kræver det noget serverside?

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://ginnerskov.frac.dk



Jens Gyldenkærne Cla~ (26-11-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 26-11-04 14:05

Erik Ginnerskov skrev:

> Man ser undertiden et textarea, hvor input er begrænset, og hvor der på
> siden løbende rapporteres tilbage til brugeren, hvor mange tegn mere, der
> kan skrives.

Det laves med javascript. Lav et script der kaldes af onchange-hændelsen
for textarea'et. Scriptet undersøger hvor mange tegn der er indtastet
(med lenght) og sammenligner der med en konstant.

> Men kan det laves clientside eller kræver det noget serverside?

Serverside-validering er håbløs til en løbende validering - det ville
kræve at siden skulle submittes for hvert eneste tegn der blev
indtastet! Men serversidevalidering er selvfølgelig fin til at tjekke
længden af inddata ved submit - efter som alle clientsidevalideringer
kan omgås, bør man bestemt også anvende serversidevalidering her - bare
kun når formen submittes.

--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Jens Peter Karlsen (26-11-2004)
Kommentar
Fra : Jens Peter Karlsen


Dato : 26-11-04 14:18

Brug f.eks. onkeydown til at kalde en funktion der tæller antallet af
tegn der indsættes.

Regards Jens Peter Karlsen. Microsoft MVP - Frontpage.

On Fri, 26 Nov 2004 13:47:06 +0100, "Erik Ginnerskov"
<erik@donotspammmeplease.invalid> wrote:

>Man ser undertiden et textarea, hvor input er begrænset, og hvor der på
>siden løbende rapporteres tilbage til brugeren, hvor mange tegn mere, der
>kan skrives. Jeg burde have kigget bag om, men tænkte ikke på det ved den
>lejlighed. Men kan det laves clientside eller kræver det noget serverside?


Søg
Reklame
Statistik
Spørgsmål : 177500
Tips : 31968
Nyheder : 719565
Indlæg : 6408518
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste