Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di EnSa
    Registrato dal
    Apr 2009
    Messaggi
    191

    [ASP.NET MVC3 c#] ActionResult Edit

    ho un form con più di un pulsante:

    codice:
            <input type="button" id="btnSave" name="btnSave" value="Salva" />
            <input type="button" id="btnSend" name="btnSend" value="Invia" />


    alla pressione di questi pulsante mi esce fuori con jquery la finestra di conferma ...

    codice:
    $(document).ready(function () {
        // Confirmation Dialog
        $('#saveDialog').dialog({
            autoOpen: false,
            width: 500,
            modal: true,
            resizable: false,
            buttons: {
                "Salva": function () {
                    $(".ui-dialog-buttonpane button:contains('Salva')").button("disable");
                    $(".ui-dialog-buttonpane button:contains('Annulla')").button("disable");
                    document.detailsForm.submit();
                },
                "Annulla": function () {
                    $(this).dialog("close");
                }
            }
        });
        $('#sendDialog').dialog({
            autoOpen: false,
            width: 500,
            modal: true,
            resizable: false,
            buttons: {
                "Invia": function () {
                    $(".ui-dialog-buttonpane button:contains('Invia')").button("disable");
                    $(".ui-dialog-buttonpane button:contains('Annulla')").button("disable");
                    document.detailsForm.submit();
                },
                "Annulla": function () {
                    $(this).dialog("close");
                }
            }
        });
    
        $('#btnSave').click(function () {
            $('#saveDialog').dialog('open');
        });
        $('#btnSend').click(function () {
            $('#saveDialog').dialog('open');
        });
    });
    fin qui tutto ok
    ora ...

    come faccio nell'actionresult con httppost a capire quale pulsante è stato premuto??

  2. #2
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,262
    La prima cosa che mi viene in mente e' __eventtarget
    guarda qui http://weblogs.asp.net/zeeshanhirani...-postback.aspx
    I got the remedy

  3. #3
    Utente di HTML.it L'avatar di XWolverineX
    Registrato dal
    Aug 2005
    residenza
    Prague
    Messaggi
    2,591
    Temo che funzioni solo con AspNet Webforms.
    Controlla la querystring.
    "Se proprio devono piratare, almeno piratino il nostro." (Bill Gates)

    "Non è possibile che 2 istituzioni statali mi mettano esami nello stesso giorno." (XWolverineX)

    http://xvincentx.netsons.org/programBlog

  4. #4
    Utente di HTML.it L'avatar di rsdpzed
    Registrato dal
    Aug 2001
    Messaggi
    768
    - dentro il form ci metti un hiddenfield vuoto con id="mode" (per esempio).

    - nelle funzioni INVIA e SALVA poco prima del submit setta un valore convenzionale ("invia" e "Salva") all'hiddenfield con:

    $('#mode').val('invia')

    - nel controller aggiungi nella firma del metodo Edit(ba bla bla, string mode)

    a questo punto ti troverai ad ogni richiesta una stringa mode che indica che tipo di scelta è stata fatta.
    P.s. Non fidarti ciecamente del fatto che mode sia sempre valorizzata e considera casi in cui sia vuota o che contenga valori non previsti (mai fidarsi di javascript lato server! anzi mai fidarsi e basta lato server )

  5. #5
    Utente di HTML.it L'avatar di EnSa
    Registrato dal
    Apr 2009
    Messaggi
    191
    ho provato a inserire $('#mode').val('invia') prima di document.detailsForm.submit();

    ma la stringa mode nel metodo edit mi viene restituita sempre con valore null ...


    sbaglio qualcosa oppure è così tanto inaffidabile??

  6. #6
    Utente di HTML.it L'avatar di rsdpzed
    Registrato dal
    Aug 2001
    Messaggi
    768
    hai messo dentro il form questa riga?
    @Html.Hidden("mode")

  7. #7
    Utente di HTML.it L'avatar di EnSa
    Registrato dal
    Apr 2009
    Messaggi
    191
    si ma mi restituisce la stringa mode vuota

  8. #8
    Utente di HTML.it L'avatar di rsdpzed
    Registrato dal
    Aug 2001
    Messaggi
    768
    a me funziona sempre. In ogni caso ho aggiunto al mio progetto correntemente aperto (in un javascript simile al tuo nella pagina di registrazione )

    $('#mode').val('pippo baudo');
    $('#registrazione_form').submit();

    e nell'action mode viene correttamente valorizzato.


    Non sono ferrato in javascript ma credo tu abbia problemi li.
    apri firebug e prova almeno a fare un tracing lato client, di piu nn so dirti

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2020 vBulletin Solutions, Inc. All rights reserved.