Senden mehrere <select> - Elemente mit jQuery POST
Habe ich das jQuery-code hinzufügen<select>
Elemente in einer Zeile in der Tabelle mit einem "hinzufügen" - Schaltfläche:
$("#add").click(function() {
$('#selected > tbody:last').append('<tr><td><select id=\'plan_id\'><option value=\'1\'>One</option><option value=\'2\'>Two</option><option value=\'3\'>Three</option></select></td></tr>');
});
Was muss ich ändern in der code unten POSTEN zu können mehrere Werte aus der select-Elemente als array? Jetzt ist es nur fügt einen Wert zu dem Zeitpunkt, zu meiner MySQL-Datenbank.
$('#course_update').click(function() {
var course_id = $('#course_id').val();
var plan_id = $('#plan_id').val();
var price_id = $('#price_id').val();
var course_name = $('#course_name').val();
var course_isActive = $('#course_isActive').val();
var course_city_id = $('#course_city_id').val();
$('#update_status').html('<img src="../images/ajax-loader.gif" />');
$.post('../update.php', {
course_id: course_id,
plan_id : plan_id,
price_id: price_id,
course_name: course_name,
course_city_id: course_city_id,
course_isActive: course_isActive
}, function(data) {
$('#update_status').html(data);
return false;
});
});
- Erste, ID ' s müssen eindeutig sein. Zweitens, wie willst du senden Sie die Daten wählen? als eine Liste von Werten? oder jeden mit es ist auf die name/Wert-paar.
- Ich würde gerne den Wert jeder
<select id ='plan_id'>
als eine Liste von Werten, denke ich mal, damit ich es abholen kann innerhalb einesforeach
Schleife mit PHP
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zuerst müssen Sie die Klassen für Ihre wählt statt einer id. jQuery wird nur zurückgeben eines element, wenn Sie eine id. Nach, dass die folgende Funktion konvertiert alle Werte der wählt Sie geben als Parameter die als array.
Also:
Sollte zum Beispiel zurück:
plan_ids
(Sie nannte es course_ids) wie sende ich das mit jQuery POST? Beschreiben Sie bitte mit meinem code in der ursprünglichen Frage!var plan_ids = serealizeSelects($('.plan_id')); $.post('../update.php', { plan_ids: plan_ids }, ...
$_POST['course_ids']
halten:array(1,3,2)
Ich würde jedem
select
- element einen eindeutigen Namen, ein array würde auch hier gut tun, siehe dieses Beispiel:und dann einfach serialisieren Sie das Formular, bevor Sie es zu senden, in:
Edit: Das komplette Beispiel:
und: