<?php
echo "<form id=\"titels-".$draailist->draaiboekID."\">";
echo "<td><input type=\"hidden\" name=\"draaiboekID\" value=\"$draailist->draaiboekID\">";
echo "<select class=\"btn btn-default btn-xs\" onchange=\"this.form.submit()\">";
echo "<option value=\"0\"><i class=\"fa fa-refresh\"></i> UPDATE TITELS</option>";
echo "<option value=\"1\"><i class=\"fa fa-refresh\"></i> UPDATE NIEUWS</option>";
echo "<option value=\"2\"><i class=\"fa fa-refresh\"></i> UPDATE TAFELGASTEN</option>";
echo "</select></td>";
echo "</form>";
?>
Maar in plaats van dat de pagina moet refreshen moet het als volgt weggestuurd worden:
<script>
$().ready(function() {
// als het formulier #theForm wordt gesubmit...
$('form#titels-<?php echo $draailist->draaiboekID; ?>').submit(function(e) {
// vang het submit event af, jQuery/AJAX handelt dit immers af
e.preventDefault(); // het default gedrag is dat het formulier gePOST wordt, en dat willen we niet
$('#postFeedResult').hide();
$.post(
'shared/push-tv-titels.php', // het script waar je naartoe POST
$('#titels-<?php echo $draailist->draaiboekID; ?>').serialize(), // verzamel alle form data in 1x (naam, content)
null, // we gebruiken .done() dus deze is niet nodig
'json' // geef een "hint" over het type van de terug te ontvangen data
)
.done(function( data ) {
alert(data);
})
.fail(function( data) {
alert(data);
})
});
});
//]]>
</script>
Hoe voorkom ik dat toch de pagina refreshed? Met een submit-button werkt onderstaande code immers wel.