jquery - $.ajax post working in Chrome, but not in Firefox -
okay, i'll short. have script putting values in database. it's working perfect in chrome, safari, can't make work in firefox or ie. seems data isn't being posted .php file , ajax not starting @ all. anyone, please?
this jquery script:
$(document).ready(function(){ $("#dodaj").click(function(){ event.preventdefault(); var kategorija = $("#kategorija option:selected").val(); var si = $("#si").val(); var hu = $("#hu").val(); var de = $("#de").val(); var = $("#an").val(); var hr = $("#hr").val(); $.ajax({ type: "post", url: "dodaj_v_bazo.php", data: {"kategorija": kategorija, "si": si, "hu": hu, "de": de, "an": an, "hr": hr}, success: function(data){ alert( "jed uspešno dodana."+data); }, }); return false; }); }); this content in php file:
$kategorija = $_post['kategorija']; $si = $_post['si']; $hu = $_post['hu']; $de = $_post['de']; $an = $_post['an']; $hr = $_post['hr']; $dodaj_v_bazo = "insert jedi (kategorija, si, hu, de, ,hr) values ('$kategorija', '$si', '$hu', '$de', '$an', '$hr')"; mysql_query($dodaj_v_bazo) or die(mysql_error());
you didn't define event parameter of event handler, hence in
event.preventdefault(); the browser tries event in global scope. chrome happens provide event object in global scope (hence no error) firefox doesn't (hence error).
i'd suggest add event parameter event handler:
$("#dodaj").click(function(event){ event.preventdefault(); // ... }); there additional difference: if don't define event parameter, event refer native event object in chrome, different the event object jquery passes handler.
to learn more event handling jquery, recommend go through these articles.
Comments
Post a Comment