Ergebnis 1 bis 12 von 12
  1. #1
    stargate ist offline Grünschnabel
    registriert
    03-03-2013
    Beiträge
    6

    Bestimmtes Hidden-Element senden per Form-Element!?

    Hi,

    ich bin mir nicht sicher ob das möglich ist. Ich habe ein normales FORM Element z.b <form method="post" action="/Mobile/Video" id="NameForm">...
    und darin befinden sich z.b 20 hidden Fields die jeweils eine eigene ID haben.
    Ich kann dann mit dieser Zeile Code

    Code:
    <a href="javascript:document.getElementById('NameForm').submit()"  >
                                   ButtonName
                            </a>
    ein Submit abschicken, aber es sendet mir hier alle Elemente per POST.. ich will aber nur ein bestimmtes.. gibt es dafür auch so ein Javascript code damit ich sagen kann ich will per submit nur das hidden field mit der ID=5 per post verschicken ?

    mfg stargate

  2. #2
    Avatar von mikdoe
    mikdoe ist offline Administrator
    registriert
    01-05-2010
    Beiträge
    7.732

    AW: Bestimmtes Hidden-Element senden per Form-Element!?

    Erstmal ist dein Link komisch. Wenn du JS auführen willst, warum benutzt du dann a href und nicht ein div mit onclick?
    Bezüglich der Felder verstehe ich das Problem nicht ganz. Wieso enthält das Formular Felder die nicht gebraucht werden? Und wieso überliest das Empfängerscript die unnötigen Felder nicht einfach? Ansonsten könnte man mit JS die Felder aus dem DOM entfernen vor dem Abschicken, Stichwort removeChild(). Aber irgendwie erscheint mir das wie von hinten durch die Brust ins Auge und ich wette, man könnte das auch anders bei dir lösen.

  3. #3
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.714

    AW: Bestimmtes Hidden-Element senden per Form-Element!?

    Warum machst du das Absenden überhaupt mit JS und nicht mit einem Submit-Button?

  4. #4
    stargate ist offline Grünschnabel
    registriert
    03-03-2013
    Beiträge
    6

    AW: Bestimmtes Hidden-Element senden per Form-Element!?

    Hi,

    also es is so.. ich will mir mit jquery mobile eine mobile Video Seite bauen!
    Dazu verwende ich eine listview bzw so einen Divider von jquery mobile.. Der Standardcode für die Listview sieht so aus:

    HTML-Code:
    <ul class="TestClass" id="TestID" data-role="listview" data-divider-theme="b" data-inset="true">
                        <li data-role="list-divider" role="heading">
                            Divider1
                        </li>
                        <li data-theme="c">
                            <a href="#page1" data-transition="slide">
                                Button1
                            </a>
                        </li>
                        <li data-theme="c">
                            <a href="#page1" data-transition="slide">
                                Button2
                            </a>
                        </li>
                        
                        
                    </ul>
    da ich mit asp.net arbeite sieht es an meine Bedürfnisse angepasst nun so aus

    Code:
    @using (Html.BeginForm("Video", "Mobile", FormMethod.Post, new { id = "videoForm" }))
    {
    <ul class="TestClass" id="TestID" data-role="listview"  data-divider-theme="b" data-inset="true">
                        <li data-role="list-divider" role="heading">
                            Video Page
                        </li>
                       
          
                        @foreach (var item in db.Links) {
                           
                                  @Html.Hidden("Link", item.VideoLink)
                               
                               <text> <li data-theme="c" >
                               
                                 <a href="javascript:document.getElementById('videoForm').submit()" data-transition="slide" >
                                Esmatics
                            </a>
                                 </li>
                          </text>
                        }
                       
                    
                                        
                    </ul>
     
    }
    Dieser Code erstellt mir eine Listview mit Hidden fields und zu jedem Hidden field einen Submit Button.
    Jedes Hidden field enthält den Link zu einem Video das aufgerufen werden soll. Wenn ich jetzt auf einen dieser Links/Buttons klicke dann soll es diesen einen Link an eine Seite mit einem Videplayer senden und das Video abspielen..
    Der code erstellt soviele Hidden links wie Daten in meiner Datenbank vorhanden sind.. Ich kann also auf der Empfängerseite keine statische Abfrage einbauen, da ich ja nicht weiß wiviele Elemente ich habe.. oder kann man alle Werte der Hidden fields komplett irgendwie als eine Art array verpacken und versenden dann könnte ich mir auf der Empfängerseite das richtige Element selber rausuche, ich müsste dann allerdings noch die ID des hidden elements mitübertragen das angeklickt wurde ?

    Ich könnte auch um jeden Button ein Form-Element bauen das würde funktionieren aber leider wird dadurch das Jquery Mobile Design zerstört und ich müsste umständlich mit css das Standard Design wieder herstellen.
    Wie funktioniert das mit dem Werte rauschlöschen ? Kannst du mir da mal ein Codebeispiel schreiben ?
    Also der Aufbau sieht im Prinzip so aus..

    <form...>

    hidden field id=LINK1 value=link zum video
    hidden field id=LINK2 value=link zum video
    hidden field id=LINK3 value=link zum video
    hidden field id=LINK4 value=link zum video

    und jedes hidden field hat soll nun so einen href Button haben
    <a href="" >
    ButtonName
    </a>

    wenn ich darauf klicke soll es mir praktisch nur das Hidden Element z.b mit der id=Link3 senden und den rest quasi löschen...
    Am besten wäre halt wenn ich einfach im Form Element direkt ein Hidden field zum senden auswählen könnte..

    mfg stargate

  5. #5
    Avatar von mikdoe
    mikdoe ist offline Administrator
    registriert
    01-05-2010
    Beiträge
    7.732

    AW: Bestimmtes Hidden-Element senden per Form-Element!?

    Aber dann ist es doch noch einfacher.
    Im <form> setzt du ein leeres hidden Feld. Und im Link setzt du per JS in dieses hidden Feld die richtige Value ein und sendest das Formular ab. Dann hast du ein hidden Feld mit der gewünschten Value für den angeklickten Link.

  6. #6
    stargate ist offline Grünschnabel
    registriert
    03-03-2013
    Beiträge
    6

    AW: Bestimmtes Hidden-Element senden per Form-Element!?

    Hi,

    und wie stelle ich es an dass es dann bei einem klick auf den Link das Feld füllt + abschickt?
    dafür muss ja sowas ausgeführt werden
    HTML-Code:
    javascript:document.getElementById("Link").value = 'blabla'
    das muss ja ausgeführt werden wenn ich auf
    HTML-Code:
     <a href="javascript:document.getElementById('videoForm').submit()"  data-transition="slide" >
                                ButtonText
                            </a>
    klicke! ich könnte nen onclick event reinmachen aber dann müsste ich ja zu jedem Button eine funktion schreiben um das Feld zu füllen oder geht das noch
    einfacher ohne zustzliche Methode?

    mfg stargate

  7. #7
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.714

    AW: Bestimmtes Hidden-Element senden per Form-Element!?

    Das geht komplett ohne JS, wenn du anstatt der <a>s <button>s machst. Den <button>s kannst du allen den gleichen Namen geben, aber verschiedene Werte (bei einem <button> wird das value-Attribut auch nicht angezeigt), die dann beim Absenden an den Server gehen - und zwar nur der Wert, der auch in dem angeklicken <button> drin ist.

  8. #8
    Avatar von mikdoe
    mikdoe ist offline Administrator
    registriert
    01-05-2010
    Beiträge
    7.732

    AW: Bestimmtes Hidden-Element senden per Form-Element!?

    Zitat Zitat von kkapsner Beitrag anzeigen
    (bei einem <button> wird das value-Attribut auch nicht angezeigt), die dann beim Absenden an den Server gehen - und zwar nur der Wert, der auch in dem angeklicken <button> drin ist.
    Auch eine gute Idee. Verwende die Dinger bisher nur, um das Button Aussehen zu bekommen Das andere wußte ich garnicht.

  9. #9
    stargate ist offline Grünschnabel
    registriert
    03-03-2013
    Beiträge
    6

    AW: Bestimmtes Hidden-Element senden per Form-Element!?

    Hi,

    du meisnt so ? <button type="submit" value="LinkZUmVideo" >ButtonName</button>

    wenn ich es so eintrage dann bekomme ich einen error bzw scheinbar wird der Wert nicht richtig übertragen !?
    Aber das Problem bei dieser Methode ist auch, dass das jquery mobile Design hier wieder nicht mehr stimmt da die Listviews bzw Divider einen href link erwarten.. und ein Button wird hier anderst gerendert.
    Gibt es denn eine möglichkeit das ich auf den <a href..> link klicke und es mir diese 2 javascript Funktionen ausführt

    HTML-Code:
    1.) javascript:document.getElementById("Link").value = 'blabla'
    2.) javascript:document.getElementById('videoForm').submit()
    am besten wäre es wenn ich diese beiden scripte direkt in den <a href..> Tag packen könnte

    mfg stargate

  10. #10
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.714

    AW: Bestimmtes Hidden-Element senden per Form-Element!?

    @mikdoe: Ist genauso wie beim <input type="submit"> - nur dass value eben nicht auch der Anzeigetext ist...

    PS: jquery mobilde ist irgendwie k****...

  11. #11
    stargate ist offline Grünschnabel
    registriert
    03-03-2013
    Beiträge
    6

    AW: Bestimmtes Hidden-Element senden per Form-Element!?

    Hi,

    danke erstmal für eure Hilfe. Ich übergebe den Mist jetzt per GET ohne form element bzw nur die ID und lasse mir dann auf der VideoPlayer Seite den richtigen Link auslesen..
    Vll. finde ich noch ne praktikable Lösung es doch noch per Post hinzubekommen ohne dass es mir das Design zerstört.

    mfg stargate

  12. #12
    Avatar von mikdoe
    mikdoe ist offline Administrator
    registriert
    01-05-2010
    Beiträge
    7.732

    AW: Bestimmtes Hidden-Element senden per Form-Element!?

    Zitat Zitat von stargate Beitrag anzeigen
    Gibt es denn eine möglichkeit das ich auf den <a href..> link klicke und es mir diese 2 javascript Funktionen ausführt
    HTML-Code:
    1.) javascript:document.getElementById("Link").value = 'blabla'
    2.) javascript:document.getElementById('videoForm').submit()
    am besten wäre es wenn ich diese beiden scripte direkt in den <a href..> Tag packen könnte
    Hast du mal das probiert?
    HTML-Code:
    javascript:document.getElementById("Link").value = 'blabla';document.getElementById('videoForm').submit()
    Ich weiß nicht mehr so genau, ob man auf das javascript folgend auch mehrere Befehle anreihen kann da ich immer den onclick dafür verwende. Da ist das kein Problem.

    Aber nochmal der dringende Hinweis: Das wäre keine saubere Lösung!

Ähnliche Themen

  1. php Combobox bestimmtes Element wählen
    Von engel im Forum Serverseitige Programmierung
    Antworten: 11
    Letzter Beitrag: 23-11-2008, 16:33
  2. bestimmtes Element im Array auslesen
    Von Lili0312 im Forum JavaScript
    Antworten: 2
    Letzter Beitrag: 06-02-2007, 21:29
  3. Form-Element aufrufen, aber wie am besten?
    Von _ben im Forum JavaScript
    Antworten: 5
    Letzter Beitrag: 26-05-2005, 22:01
  4. ebene/layer an ein bestimmtes element binden
    Von reni im Forum JavaScript
    Antworten: 23
    Letzter Beitrag: 20-03-2003, 22:53
  5. Bestimmtes Element aus Array löschen
    Von cula-online im Forum JavaScript
    Antworten: 5
    Letzter Beitrag: 24-09-2002, 23:51

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •