Kom ihåg mig?
Home Menu

Menu


Submitta formulär med jQuery och AJAX?

Ämnesverktyg Visningsalternativ
Oläst 2009-01-12, 15:32 #1
sandstream sandstream är inte uppkopplad
Medlem
 
Reg.datum: May 2008
Inlägg: 130
sandstream sandstream är inte uppkopplad
Medlem
 
Reg.datum: May 2008
Inlägg: 130
Jag håller på med min första "AJAX-funktion" med hjälp av jQuery. Har kommit så långt att jag kan klicka på en knapp på HTML-sidan och få tillbaka ett värde från serversidan (ASP) som sedan skrivs ut på HTML-sidan (eller ASP-sidan om man så vill).

Koden på klientsidan ser ut så här:


<script type="text/JavaScript">
$(document).ready(function(){
$("#generate").click(function(){
$("#quote p").load("ajaxtest.asp");

});
});
</script>

<HTML.......
<div id="quote">

</p></div>
<input type="submit" id="generate" value="Generate!">
</HTML>

Så långt är allt frid och fröjd men nu vill jag förändra så att ASP-sidan kan läsa i databasen med ett värde från formuläret men jag kan inte riktigt komma på hur jag ska göra.
(Är grön när det gäller javascript så det tar tid att bara försöka förstå de relativt enkla jQuery-kommandona :unsure: ).

Jag vill skapa ett formulär som innehåller en lista, ungefär så här:

<select id=generate>
<option value=123>Produkt 1</option>
<option value=456>Produkt 2</option>
<option value=789>Produkt 3</option>
</select>

När besökaren väljer "Produkt 2" är det värdet "456" som ska skickas till "ajaxtest.asp" .

Någon som vet hur jag ska göra?
sandstream är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-01-12, 15:44 #2
Silodon Silodon är inte uppkopplad
Nykomling
 
Reg.datum: Feb 2005
Inlägg: 38
Silodon Silodon är inte uppkopplad
Nykomling
 
Reg.datum: Feb 2005
Inlägg: 38
Du kan använda val() funktionen för att hämta värdet från din lista och get() för att skicka datan till ditt asp script. Exakt hur du använder dom kan du läsa om i jQuerys dokumentation http://docs.jquery.com/
Silodon är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-01-12, 17:23 #3
sandstream sandstream är inte uppkopplad
Medlem
 
Reg.datum: May 2008
Inlägg: 130
sandstream sandstream är inte uppkopplad
Medlem
 
Reg.datum: May 2008
Inlägg: 130
Tackar, jag ska kolla dokumentationen!
sandstream är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-01-12, 18:28 #4
emilvs avatar
emilv emilv är inte uppkopplad
Bara ett inlägg till!
 
Reg.datum: Feb 2004
Inlägg: 1 564
emilv emilv är inte uppkopplad
Bara ett inlägg till!
emilvs avatar
 
Reg.datum: Feb 2004
Inlägg: 1 564
$.post-funktionen funkar också, om du föredrar POST framför GET
emilv är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-01-12, 19:36 #5
sandstream sandstream är inte uppkopplad
Medlem
 
Reg.datum: May 2008
Inlägg: 130
sandstream sandstream är inte uppkopplad
Medlem
 
Reg.datum: May 2008
Inlägg: 130
Javascript är mindre kul när man knappt förstår vad man gör men till slut fick jag till det och koden blev så här:

$(document).ready(function(){
$("#generate").change(function(){
// get the ticker symbol and build URL
var xx_input = $("#generate").val();
var xx_url = "ajaxtest.asp";
$.ajax({
url:xx_url,
data:{ url:escape(xx_input) },
dataType:"html",
success:function(data){ $("#quote p").html( data );},
error:function(xhr,err,e){ alert( "Error: " + err ); }
}); // $.ajax()
return false;
}); // .submit()
sandstream är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-01-12, 19:38 #6
sandstream sandstream är inte uppkopplad
Medlem
 
Reg.datum: May 2008
Inlägg: 130
sandstream sandstream är inte uppkopplad
Medlem
 
Reg.datum: May 2008
Inlägg: 130
Citat:
Originally posted by emilv@Jan 12 2009, 19:28
$.post-funktionen funkar också, om du föredrar POST framför GET
Vad är skillnaden mellan POST och GET i det här fallet?

I ett vanligt forumlär skickas ju parametrarna i URL:en med GET och "dolda" med POST.
sandstream är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-01-13, 06:11 #7
martines avatar
martine martine är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Mar 2005
Inlägg: 767
martine martine är inte uppkopplad
Mycket flitig postare
martines avatar
 
Reg.datum: Mar 2005
Inlägg: 767
Citat:
Ursprungligen postat av sandstream
Javascript är mindre kul när man knappt förstår vad man gör men till slut fick jag till det …
Själv blir jag mest förvirrad av alla JQuery:s "förkortningar"…

Citat:
Ursprungligen postat av sandstream
Vad är skillnaden mellan POST och GET i det här fallet?

I ett vanligt forumlär skickas ju parametrarna i URL:en med GET och "dolda" med POST.
Det är samma sak, det är ju en del av http.

Titta exempelvis på w3c om du undrar när du ska använda vad. Eller en tramsig diskussion här.

Kort sagt så skickas POST med som en bilaga vilket gör att man kan skicka mycket större datamängder och även filer. Med GET däremot så skickar du med datan som "en del av länken" om man får uttrycka sig så (i och med att det är en "länk" så blir den dessutom synlig för besökare och kan bokmärkas när man använder formulär vilket kan vara både bra och dåligt - men vad det gäller Ajax så blir spelar detta i stort sett igen roll) - dessutom är GET (eftersom det är "länkar") känsligare för teckenkodningsproblem.
martine är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 06:59.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017