[Jquery] 在Chrome中使用$ .ajax后,但不在Firefox中使用


Answers

如果在表单提交时触发异步调用,则可能无法在FF中工作。 你可以添加async:false到你的ajax调用,它会工作。 这是或者你有跨域调用的事实,你将不得不通过CORS修复。

Question

好吧,我会很短。 我有这个脚本是在数据库中的值。 它在Chrome,Safari浏览器中运行良好,但无法在Firefox或IE中运行。 似乎数据甚至没有被发布到.php文件,而且ajax根本就没有启动。 有人吗?

这是我的jQuery脚本:

$(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 = $("#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;
});
});

这是我的PHP文件中的内容:

$kategorija = $_POST['kategorija'];
$si = $_POST['si'];
$hu = $_POST['hu'];
$de = $_POST['de'];
$an = $_POST['an'];
$hr = $_POST['hr'];

$dodaj_v_bazo = "INSERT INTO jedi (kategorija, si, hu, de, an ,hr) VALUES ('$kategorija', '$si', '$hu', '$de', '$an', '$hr')";
mysql_query($dodaj_v_bazo) or die(mysql_error());