Avatar billede madand Nybegynder
07. marts 2010 - 22:06 Der er 9 kommentarer og
1 løsning

ASP.NET MVC & jQuery genereret input bokse

Hej Alle,

Jeg står i et problem..
Jeg har nedenstående kode, som i kan se på siden, så er der noget jQuery, der får boksene Tog, Hotel, Fly osv, til at poppe frem. Hvis man tager dem frem, så kan man tilføje rækker, som også bliver genereret med jQuery. Det jeg har brug for, det er hjælp til hvordan jeg finder ud af hvor mange gange kunden har trykket på "tilføj", i min C# kode og få det ud af boksene som kunden har trykket på og sende via mail. Det er ikke mig der har skrevet jQuery, men den er lavet, så hver gang man klikker tilføj, så generere den et nyt id, som eks. "train[0].To" tilføj "train[1].To" tilføj "train[2].To" osv.


*Det er vidst nok ikke lavet på cwt-online.dk, men det har jeg lavet i min kode.*

Da boksene først bliver tilføjet når kunden trykker Tilføj, så er jeg blank, for hvordan får jeg så fat i det? og kan det lade sig gøre?

Meget rodet måske, men spørg alt hvad i vil, hvis i mangler uddybninger.


Url: http://www.cwt-online.dk


EmailHelpers.cs:
http://pastebin.com/xxTmzQ1P

Index.aspx:
http://pastebin.com/kKmwUXPy

EmailController.cs:
http://pastebin.com/YMfHWrV2

Emai.cs:
http://pastebin.com/gqHip7px
Avatar billede madand Nybegynder
07. marts 2010 - 22:07 #1
EmailController skal hedde: OrderController.cs og her er koden:
http://pastebin.com/hAcFm0fz
Avatar billede Syska Mester
07. marts 2010 - 22:30 #2
Går ud fra det er en i Form ... og så bliver det jo automatisk postet tilbage til din Controller ...

var list = HttpContext.Current.Request.Form.GetValues("train");

ellers en class
public class Tog
(
public string To{get; set}
)

og din controller:

public ActionResult(List<Tog> train)
{

}

// PS. Intet er testet ... men burde virke
Avatar billede madand Nybegynder
08. marts 2010 - 09:42 #3
Hey Buz, mange tak for hurtig response..
Er stadig meget ny i ASP.NET og har ikke rigtig arbejdet så meget med List<>, selvom det virker sejt..

Kan du skrive lidt mere hvad der skal stå i det ActionResult?, jeg er virkelig helt blank..
Avatar billede madand Nybegynder
08. marts 2010 - 09:48 #4
Kunne det være noget ala det her:
<% using(Html.BeginForm())  { %>
        <% for(var i = 0; i <= 10; i++) { %>
            Firstname:
            <%= Html.TextBox("informations[" + i + "].Firstname") %><br />
            Lastname: <br />
            <%= Html.TextBox("informations[" + i + "].Lastname") %><br /><br /><br />
        <% } %>
       
        <input type="submit" />
    <% } %>
Avatar billede Syska Mester
08. marts 2010 - 10:41 #5
ja, så skal din liste hedder

var informations = new List<Persons>();

Persons har så 2 props ... Firstname og Lastname.

mvh
Avatar billede Syska Mester
08. marts 2010 - 10:43 #6
http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx

Udover det med Index tingen ikke er nødvendig længere ...
Avatar billede madand Nybegynder
09. marts 2010 - 23:08 #7
Lyder rigtig godt :)
Phil Haack hjalp en hel del..
Smider du svar?
Avatar billede Syska Mester
09. marts 2010 - 23:13 #8
Skrev du mail til ham eller hans side der hjalp?

svar.
Avatar billede madand Nybegynder
09. marts 2010 - 23:23 #9
Det var linket du sendte der hjalp :)
og mange tak for det.. Du er der altid når man har brug for .NET hjælp
Avatar billede Syska Mester
10. marts 2010 - 00:01 #10
Yes, ellers er Arne_v eller nogen af de andre

asp.net mvc er nice ... et pros/cons mellem det og webforms.

mvh
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester