/ 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
submit fra javascript funktion
Fra : Bjerrum


Dato : 21-08-03 11:26

Hej

Er det muligt undlade submit knappen i et form tag og i stedet sende via
javascript?

Bjerrum



 
 
Jesper Stocholm (21-08-2003)
Kommentar
Fra : Jesper Stocholm


Dato : 21-08-03 11:33

Bjerrum wrote :

> Er det muligt undlade submit knappen i et form tag og i stedet sende
> via javascript?

Ja, du skriver ikke hvordan din form er bygget op, men hvis der fx er en
select-box, så kan du "fange" change-eventen i din box og derefter
submitte indholdet via javascript

<script type="text/javascript">
   function SubmitMe(); {
       document.forms[0].submit();
   }
</script>

<form action="page.aspx" method="post">
   <select onchange="SubmitMe()">
       <option>value1</option>
       <option>value2</option>
       <option>value3</option>
   </select>
</form>

Du bør dog overveje at brugere uden javascript slået til så ikke vil
kunne bruge din form.

--
Jesper Stocholm - www.stocholm.dk - www.asp-faq.dk
** De andre siger, at han er 16 **
Svar venligst til gruppen og ikke til mig privat !
Skriv under det du svarer på - www.usenet.dk/netikette/citatteknik.html

Martin Hintzmann And~ (21-08-2003)
Kommentar
Fra : Martin Hintzmann And~


Dato : 21-08-03 11:38

Bjerrum wrote:

> Hej
>
> Er det muligt undlade submit knappen i et form tag og i stedet sende via
> javascript?
>

Ja, du benytter bare følgende:

document.forms["FORMENSNAVN"].submit()

.... men husk at de brugere som ikke har javascript eller har slået det fra, så ikke kan submit'e
formen.
Så tilføj følgende til din form.

<noscript>
<input type="submit" />
</noscript>

Så kan alle være med

Hintzmann c",)


Bjerrum (21-08-2003)
Kommentar
Fra : Bjerrum


Dato : 21-08-03 12:14

Tak til Hintzmann og jer andre for de hurtige svar - det virker.

Kom til at se sådan ud:

<script language="JavaScript" type="text/JavaScript">
function clik(){
document.form1.submit();
}
</script>

<form action="/login.jsp" method="post" name="form1">
<input name="username" type="text" size="20">
<input name="pw" type="password" size="20">
<noscript>
<input type="submit" name="Submit" value="Login">
</noscript>
</form>

a href="javascript: clik()">Send</a>

Vil det så virke på "alle" browser???

Bjerrum



Martin Hintzmann And~ (21-08-2003)
Kommentar
Fra : Martin Hintzmann And~


Dato : 21-08-03 12:26

Bjerrum wrote:

> Tak til Hintzmann og jer andre for de hurtige svar - det virker.
>
> Kom til at se sådan ud:
>
> <script language="JavaScript" type="text/JavaScript">
> function clik(){
> document.form1.submit();
> }
> </script>
>
> <form action="/login.jsp" method="post" name="form1">
> <input name="username" type="text" size="20">
> <input name="pw" type="password" size="20">
> <noscript>
> <input type="submit" name="Submit" value="Login">
> </noscript>
> </form>
>
> a href="javascript: clik()">Send</a>
>
> Vil det så virke på "alle" browser???

Du burde lave det således at browsere uden javascript ikke ser linket "send".

<form action="/login.jsp" method="post" id="form1">
<div>
<input name="username" type="text" size="20" />
<input name="pw" type="password" size="20" />
</div>
<script type="text/javascript">
   document.writeln("<a href=\"javascript: document.forms['form1'].submit();\">Send</a>");
</script>
<noscript>
<div>
<input type="submit" name="Submit" value="Login" />
</div>
</noscript>
</form>


Bjerrum (21-08-2003)
Kommentar
Fra : Bjerrum


Dato : 21-08-03 13:05


Martin Hintzmann Andersen wrote:

> Du burde lave det således at browsere uden javascript ikke ser linket
"send".
>
> <form action="/login.jsp" method="post" id="form1">
> <div>
> <input name="username" type="text" size="20" />
> <input name="pw" type="password" size="20" />
> </div>
> <script type="text/javascript">
> document.writeln("<a href=\"javascript:
document.forms['form1'].submit();\">Send</a>");
> </script>
> <noscript>
> <div>
> <input type="submit" name="Submit" value="Login" />
> </div>
> </noscript>
> </form>
>

Smart - gør jeg
Og tak igen

Bjerrum



Jesper Stocholm (21-08-2003)
Kommentar
Fra : Jesper Stocholm


Dato : 21-08-03 12:23

Bjerrum wrote :

> Tak til Hintzmann og jer andre for de hurtige svar - det virker.
>
> Kom til at se sådan ud:
>
> <script language="JavaScript" type="text/JavaScript">

Du bør fjerne language-attributten - den er forældet.

> function clik(){
> document.form1.submit();
> }
> </script>
>
> <form action="/login.jsp" method="post" name="form1">
> <input name="username" type="text" size="20">
> <input name="pw" type="password" size="20">
> <noscript>
> <input type="submit" name="Submit" value="Login">
> </noscript>
> </form>
>
> a href="javascript: clik()">Send</a>

Jeg mener du skal fjerne mellemrummet imellem "javascript:" og "click()"

> Vil det så virke på "alle" browser???

Hvis de afvikler javascript, så bør det ikke være et problem.

--
Jesper Stocholm - http://stocholm.dk
Glad Spampal-bruger med 94,99% nøjagtighed for juli 2003
http://www.spampal.org - kig efter bayesian filtre.

Bjerrum (21-08-2003)
Kommentar
Fra : Bjerrum


Dato : 21-08-03 13:06

Jeg takker

Jesper Stocholm wrote :
>
> Du bør fjerne language-attributten - den er forældet.

Det gør jeg så

>
> > a href="javascript: clik()">Send</a>
>
> Jeg mener du skal fjerne mellemrummet imellem "javascript:" og "click()"

Det virker fint, men jeg rykker det sammen for god ordens skyld.

Bjerrum



Lasse Reichstein Nie~ (21-08-2003)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 21-08-03 17:12

Jesper Stocholm <jespers@stocholm.invalid> writes:

> Bjerrum wrote :
> > a href="javascript: clik()">Send</a>
>
> Jeg mener du skal fjerne mellemrummet imellem "javascript:" og "click()"

Det skulle være ligegyldigt.
Under alle omstændigheder er det en uskik at lave a-elementer
med href="javascript:...". Hvis der ikke er et link til en anden side,
så lad være med at bruge a-elementer, og brug knapper i stedet. Det
er det de er der for.

/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
Art D'HTML: <URL:http://www.infimum.dk/HTML/randomArtSplit.html>
'Faith without judgement merely degrades the spirit divine.'

Bjerrum (21-08-2003)
Kommentar
Fra : Bjerrum


Dato : 21-08-03 19:07


Lasse Reichstein Nielsen wrote :

> Under alle omstændigheder er det en uskik at lave a-elementer
> med href="javascript:...". Hvis der ikke er et link til en anden side,
> så lad være med at bruge a-elementer, og brug knapper i stedet. Det
> er det de er der for.

Hvorfor er det usikket?
Er det noget i den stil i stedet?
<a href="#" onClick="javascript: clik()">Send</a>

Grunden til at jeg ikke vil bruge submit-knappen er at jeg kalder scriptet
fra et flash objekt. Det gør jeg bl.a. for at lave en knap, der kun kan
trykkes på en gang. Til fil opload.

Søren



Lasse Reichstein Nie~ (21-08-2003)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 21-08-03 19:24

"Bjerrum" <sb@mijau(slet).dk> writes:

> Hvorfor er det usikket?

Ikke usikkert, bare en uskik.

> Er det noget i den stil i stedet?
> <a href="#" onClick="javascript: clik()">Send</a>

Det er bedre (javascriptseudo-protokollen skal man helst helt
undgå), men det ændrer stadig ikke ved at folk uden javascript ikke
kan bruge det til en noget (det kan ikke altid undgås) og at det
*ligner* et link selvom det ikke er det.

Det at man skriver en attribut som man helst ville undvære, det er et
tegn på at man gør noget forkert. Det samme gælder for form'er med
action="#".

> Grunden til at jeg ikke vil bruge submit-knappen er at jeg kalder scriptet
> fra et flash objekt.

Det er fint, men så kan du også droppe linket. Hvis du har noget der,
når man trykker på det, submitter en form, så er der ikke nogen grund
til ikke at lade det være en knap.

> Det gør jeg bl.a. for at lave en knap, der kun kan trykkes på en
> gang. Til fil opload.

<button type="submit" onclick="this.onclick=function(){return false;}">
Click Once!
</button>

Der er folk der ikke har javascript (slået til eller tilgængeligt) i
deres browser, og der er folk der ikke har Flash. De vil ikke kunne
bruge din side overhovedet. Godt design er at have noget at falde
tilbage på, f.eks. en submit-knap.

/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
Art D'HTML: <URL:http://www.infimum.dk/HTML/randomArtSplit.html>
'Faith without judgement merely degrades the spirit divine.'

Bjerrum (21-08-2003)
Kommentar
Fra : Bjerrum


Dato : 21-08-03 20:00


"Lasse Reichstein Nielsen" <lrn@hotpop.com> skrev i en meddelelse

> *ligner* et link selvom det ikke er det.

Enig det er en uskik

> Det er fint, men så kan du også droppe linket. Hvis du har noget der,
> når man trykker på det, submitter en form, så er der ikke nogen grund
> til ikke at lade det være en knap.

Jeg bruger kun linket til at teste med - mit kald til functionen er fra
flash.

> > Det gør jeg bl.a. for at lave en knap, der kun kan trykkes på en
> > gang. Til fil opload.
>
> <button type="submit" onclick="this.onclick=function(){return false;}">
> Click Once!
> </button>

Øh fik jeg ikke helt.
Kunne selvfølgelig være noget med if(i>1) og i++ hvad ved jeg.

Det jeg gør fra flash er at jeg fjerner kappen og viser en simpel animation,
som indikere at der skal vendes.

> Der er folk der ikke har javascript (slået til eller tilgængeligt) i
> deres browser, og der er folk der ikke har Flash. De vil ikke kunne
> bruge din side overhovedet. Godt design er at have noget at falde
> tilbage på, f.eks. en submit-knap.

Den er jeg helt med på . Derfor laver jeg det sådan, at hvis man ikke har
javascript for man en almindelig submit, som der så desværre kan trykkes på
i det uendelige. Sådan er det faktisk nu. Men for dem som har javascript vil
jeg lave lidt brugervenlighed. Flash er et must da det handler om Flash
Communication Server.

Spørgsmålet er så hvor mange har flash, men ikke javascript. ???

Nå men tak for dine ord - jeg blev klogere.

Bjerrum





Ukendt (21-08-2003)
Kommentar
Fra : Ukendt


Dato : 21-08-03 11:38

Ja.

<form name="form1" action="mailto:modtager@host.dk">

Resten af form her

<input type="submit" value="send">

Så bliver data f.eks sendt som email i stedet.

Leif.

"Bjerrum" <sb@mijau(slet).dk> skrev i en meddelelse
news:1711b.52615$Kb2.2437452@news010.worldonline.dk...
> Hej
>
> Er det muligt undlade submit knappen i et form tag og i stedet sende via
> javascript?
>
> Bjerrum
>
>



Johan Holst Nielsen (21-08-2003)
Kommentar
Fra : Johan Holst Nielsen


Dato : 21-08-03 11:42

leif wrote:
> Ja.
>
> <form name="form1" action="mailto:modtager@host.dk">
>
> Resten af form her
>
> <input type="submit" value="send">
>
> Så bliver data f.eks sendt som email i stedet.

Øøøh, hvad havde det med spørgsmålet at gøre??

mvh
Johan


Thomas Due (21-08-2003)
Kommentar
Fra : Thomas Due


Dato : 21-08-03 11:40

Bjerrum wrote:

> Er det muligt undlade submit knappen i et form tag og i stedet sende
> via javascript?

Mjah, du kan jo definere et link som trigger form.onsubmit.

<form id="formid">
....
<a href="#" onclick="formid.submit();">Submit</a>
</form>

Skulle vel kunne gøre det. (Med forbehold for korrekt syntax og
validering m.m., men det er ihvertfald princippet).

--
Thomas Due
Software Developer
Scanvaegt Nordic A/S

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

Månedens bedste
Årets bedste
Sidste års bedste