Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

FF - JS - Form

0 views
Skip to first unread message

Jens Thomsen

unread,
Jul 17, 2008, 2:50:34 AM7/17/08
to
Jeg skal sætte en formularværdi ved klik på et link.

FF sætter værdien fint nok, men ruller op øvrst på siden :-/

<a href='#' onclick='document.myform.myfield.value=5'>CLICK ME</a>

Denne skiftede helt side:

<a href='javascript:document.myform.myfield.value=5'>CLICK ME</a>

Hvor er det jeg går galt i byen?


Martin

unread,
Jul 17, 2008, 5:26:26 AM7/17/08
to
Jens Thomsen wrote:
> Jeg skal sætte en formularværdi ved klik på et link.
>
> FF sætter værdien fint nok, men ruller op øvrst på siden :-/
>
> <a href='#' onclick='document.myform.myfield.value=5'>CLICK ME</a>

Du kan fjerne href='#' så vil siden ikke springe, når man skriver # så
betyder det egentlig gå til toppen af siden.

Du kan også lave et
<a name="navn"></a>

også skrive
href="#navn" så vil den springe så <a name="navn"></a> er i toppen af
siden (hvis ikke siden er nået til bunden)

Adam Sjøgren

unread,
Jul 17, 2008, 6:44:22 AM7/17/08
to
On Thu, 17 Jul 2008 08:50:34 +0200, Jens wrote:

> Jeg skal sætte en formularværdi ved klik på et link.
> FF sætter værdien fint nok, men ruller op øvrst på siden :-/

> <a href='#' onclick='document.myform.myfield.value=5'>CLICK ME</a>

Prøv med:

onclick="javascript:document.myform.myfield.value=5; return false;"

i stedet.

Det der med at lave et link til et anker uden navn synes jeg i øvrigt er
grimt, men det er nok et spørgsmål om smag og behag.

> Hvor er det jeg går galt i byen?

Jeg tror du har glemt at returværdien på din Javascript-snip i
onclick-attributten bestemmer om linkets oprindelige funktion bliver
aktiveret eller ej.


Mvh.

--
"Angels can fly because they take themselves lightly." Adam Sjøgren
as...@koldfront.dk

Martin

unread,
Jul 17, 2008, 7:15:08 AM7/17/08
to
Adam Sjøgren wrote:
> On Thu, 17 Jul 2008 08:50:34 +0200, Jens wrote:
>
>> Jeg skal sætte en formularværdi ved klik på et link.
>> FF sætter værdien fint nok, men ruller op øvrst på siden :-/
>
>> <a href='#' onclick='document.myform.myfield.value=5'>CLICK ME</a>
>
> Prøv med:
>
> onclick="javascript:document.myform.myfield.value=5; return false;"

Da onclick ER en javascript funktion, så skriver man ikke javascript: så
derfor skriv

onclick="document.myform.myfield.value=5; return false;"

istedet

javascript: er iøvrigt deprecated i href's da man ikke sætter javascript
ind i en href mere

Adam Sjøgren

unread,
Jul 17, 2008, 7:21:52 AM7/17/08
to
On Thu, 17 Jul 2008 13:15:08 +0200, Martin wrote:

>> onclick="javascript:document.myform.myfield.value=5; return false;"

> Da onclick ER en javascript funktion, så skriver man ikke javascript:

Interessant. Har du en reference til det?

Martin

unread,
Jul 17, 2008, 8:08:32 AM7/17/08
to
Adam Sjøgren wrote:
> On Thu, 17 Jul 2008 13:15:08 +0200, Martin wrote:
>
>>> onclick="javascript:document.myform.myfield.value=5; return false;"
>
>> Da onclick ER en javascript funktion, så skriver man ikke javascript:
>
> Interessant. Har du en reference til det?

<http://www.w3.org/TR/REC-html40/interact/scripts.html#h-18.2.3>

Adam Sjøgren

unread,
Jul 17, 2008, 8:26:47 AM7/17/08
to

> Adam Sjøgren wrote:

> <http://www.w3.org/TR/REC-html40/interact/scripts.html#h-18.2.3>

Der står at man angiver default script-typen i et meta-element eller i
headers og hvordan man angiver typen for script-elementer:

<http://www.w3.org/TR/html4/interact/scripts.html#h-18.2.2.1>

- men ikke noget om hvordan man bruger forskellige typer scripts i
onclick og venner ("intrinsic events").

Ved du hvordan man gør det? (Jeg kan ikke huske hvor jeg har
"javascript:"-prefixet fra, men det er ikke nævnt i standarden hvad jeg
lige kan se).

Specielt står der:

"Documents that do not specify default scripting language information
and that contain elements that specify an intrinsic event script are
incorrect."

Så onlick ER kun en Javascript-funktion, hvis man har defineret
Javascript som default script-sprog.

Der fortsættes dog med:

"User agents may still attempt to interpret incorrectly specified
scripts but are not required to. Authoring tools should generate
default scripting language information to help authors avoid creating
incorrect documents."


Mvh.

Adam

Jens Thomsen

unread,
Jul 18, 2008, 1:30:49 AM7/18/08
to
> Du kan fjerne href='#' så vil siden ikke springe, når man skriver # så
> betyder det egentlig gå til toppen af siden.

Interessant, nu virker det som forventet, men til gengæld bliver det ikke
til et understreget link.
Kunne man jo nok klare med CSS, men det er godt nok specielt at det der
altid har virket i alle andre browsere pæudseligt i FF ikke fungere :-/


Erik Ginnerskov

unread,
Jul 18, 2008, 1:35:00 AM7/18/08
to
Jens Thomsen wrote:

> Interessant, nu virker det som forventet, men til gengæld bliver det
> ikke til et understreget link.

Du kunne jo også genindsætte den href="#" og så tilføje den return false,
som Martin kom med. Derved beholder du linkudseendet og slipper for at siden
springer op til toppen.

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


Jens Thomsen

unread,
Jul 18, 2008, 9:11:55 AM7/18/08
to

"Erik Ginnerskov" <erik.gi...@live.dk> wrote in message
news:48802b70$0$90269$1472...@news.sunsite.dk...
> Jens Thomsen wrote:
>
>> Interessant, nu virker det som forventet, men til geng�ld bliver det

>> ikke til et understreget link.
>
> Du kunne jo ogs� geninds�tte den href="#" og s� tilf�je den return false,
> som Martin kom med. Derved beholder du linkudseendet og slipper for at
> siden springer op til toppen.

Done!
Og det virker :-)

Tak for al hj�lpen!


0 new messages