我只是在status.php中编写了以下代码:

<script type="text/javascript">
    $(document).ready(function() {
        $("form#iscrizione").submit(function(){
            var ordine = $("#ordine").val();
            var cognome = $("#cognome").val();
            $.ajax({
                type: "POST",
                url: "http://****/new/action.php",
                data: "cognome=" + cognome + "&ordine=" + ordine,
                dataType: "html",
                success: function(risposta) {
                    $("div#risposta").html(risposta);
                    alert("ok!");
                },
                error: function(){
                    alert("Chiamata fallita!!!");
                }
            });
            return false;
        });
    });
</script>

在我的页面(status.php)中它可以工作!
但是,当我在index.php中放置status.php的一个框架时,它不起作用,只会更改url,比如:?cognome=Esposito&ordine=2121237391
要在index.php中作为框架工作,我应该做什么?

最佳答案

我用过

  type: "GET",
  url: "http://stackoverflow.com/questions/32554239/ajax-post-without-refresh",

而不是你的
   type: "POST",
  url: "http://****/new/action.php",

而且效果很好。(只需单击“run snippet”,它会显示一个错误,因为url不支持跨域)
$(document).ready(function() {
  $("form#iscrizione").submit(function(){
    var ordine = $("#ordine").val();
    var cognome = $("#cognome").val();
    $.ajax({
      type: "GET",
      url: "http://stackoverflow.com/questions/32554239/ajax-post-without-refresh",
      data: "cognome=" + cognome + "&ordine=" + ordine,
      dataType: "html",
      success: function(risposta) {
        $("div#risposta").html(risposta);
        alert("ok!");
      },
      error: function(){
              alert("Chiamata fallita!!!");
}
    });
    return false;
  });
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id="iscrizione">

  <input type="text" value="get" id="cognome"><input type="text" value="get" id="ordine"><input type="submit" value="get"></form><div id="risposta"></div>

10-04 21:25
查看更多