2016-05-11 5 views
1

Ich muss ein Formular senden und ich muss den Wert der Schaltfläche zum Senden enthalten, die geklickt wurde. Wie kann ich das machen? Dies ist mein Code:Wie wird der Wert der Schaltfläche zum Senden des Formulars eingefügt, auf den geklickt wurde?

<form id="form_update" > 
    <input type="text" class="form-control" name="title" value="" > 
    <input type="hidden" name="prova" value="prova" /> 
    <button type="submit" name="salva" value="delete" class="btn btn-success">delete</button> 
    <button type="submit" name="salva" value="modify" class="btn btn-success">modify</button> 
    <button type="submit" name="salva" value="save" class="btn btn-success">save</button> 
</form> 
$(document).on('submit', '#form_update', function() { 
    return callAjax($(this).serialize()); 
}); 

function callAjax(data) { 
    $.ajax({ 
     type: 'POST', 
     url: 'call/function.php', 
     data: data, 
     success: function(data) { 
      // code 
     }, 
     error: function(data) { 
      alert('error'); 
     } 
    }); 
    return false; 
}; 
+0

„vorlegen muss auch Button, war clicke d "? Wo benutzt du das? –

Antwort

0

Dank ...

Mit Arun Lösung, die ich nicht definiert val Wert erhalten ...

Mit Daan Lösung das Problem das gleiche ...

Aber mit Ihrer Antwort war habe ich beschlossen, mit eine Mischung :)

$(document).on('click', 'button', function(e) { 
    e.preventDefault(); // Prevent from submitting form. 
    var buttonValue = $(this).val(); 
    return callAjax($('#form_update').serialize()+'&salva='+buttonValue); 
}); 

vielen Dank;)

2

ich den Ereignistyp auf die Schaltfläche mit einem Klick ändern würde und den Zugriff auf ihre Werte mit $(this).val()

$(document).on('click', 'button', function(e) { 
    e.preventDefault(); // Prevent from submitting form. 
    var buttonValue = $(this).val(); 
    return callAjax($('#form_update').serialize()); 
}); 
2

Verwenden Sie die unten Funktion.

$(document).on('submit', '#form_update', function() { 
    var val = $("input[type=submit][clicked=true]").val(); 
    return callAjax($(this).serialize()+'&clickedVal='+val); 
}); 

Es wird den geklickt Taste Wert mit der ajax Anfrage übergeben.

Verwandte Themen