Ajax没有加载php文件

时间:2015-01-09 16:17:32

标签: php jquery ajax

这是我的ajax代码:

function saveChanges(object){ 
  var id = object.value;
  alert('HI'+id);
  $.ajax({
    url : 'ajaxChangeProfile.php',
    type: 'POST',
    data: {'id':id}
  });
}

这就是所谓的

<select onchange="saveChanges(this);" name="changeChar" id="changeChar">

因此,当我更改选择框的值时,我会收到包含正确消息和ID的警报。

在我试图发送的php文件的顶部,我有一个查询,它会在我的数据库中的测试表中添加一个数字,但是没有添加。

我需要在php文件中做的就是更改2个会话变量并进行1个mySQL查询。

由于

编辑1:

function saveChanges(object){ 

  var id = object.value;
  alert('HI'+id);
  $.ajax({
    url : 'ajaxChangeProfile.php',
    type: 'POST',
    data: {'id':id},
    success: function() {
      alert('WORKING');
    }
  });
}

我尝试添加done()回调,但它停止了警报工作,所以我不知道该怎么做,添加成功后消息仍然显示但仍然没有加载页面。是否可以仅在成功时发出警报或者我还需要其他东西吗?

编辑2:

function saveChanges(object){ 

  var id = object.value;
  alert('HI'+id);
  $.ajax({
    url : 'ajaxChangeProfile.php',
    type: 'POST',
    data: {'id':id},
    success: function(data) {
      alert(data);
    }
  });
}

我已经做了回答者建议的更改,仍然是同一个问题,第一个警告正在显示,具有正确的ID,但是然后php文件上没有任何内容发生。

2 个答案:

答案 0 :(得分:0)

在您的成功功能中,您不会返回数据。尝试添加错误功能。

success: function(data){
    alert(data);
},
error: function(xhr, status, error){
    alert(error);
}

答案 1 :(得分:0)

使用Jquery Onchange事件

<select name="changeChar" id="changeChar"></select>

在javascript中

$(document).ready(function(){
    $('#changeChar').change.(function(){
        var id = $(this).val();
        alert('HI'+id);
        var datastring = 'id='+id;
        $.ajax({
           url : 'ajaxChangeProfile.php',
           type: 'POST',
           data: datastring,
           success: function(data) {
              alert(data);
           }
        });    
    });
});