当我使用$ .post时出了点问题

时间:2015-12-24 13:46:54

标签: javascript php ajax

我有一些奇怪的问题,我现在已经看了好几天了,即使使用谷歌搜索也无法解决。

按下按钮时,我会调用这条JS。我出租车告诉这个功能真的被调用,因为警报(" 1")弹出。我也确定rarray已经填充了。

private string userName;
private string fileDirectory;

public AddFileForm(Files _file) : this(_file.userName, _file.directory) {  }
public AddFileForm(string user, string directory)
{
    userName = user;
    fileDirectory = directory;
    InitializeComponent();
}

private void buttonAdd_Click(object sender, EventArgs e)
{
    userName = listBoxUserList.SelectedItem.ToString();
    fileDirectory = listBoxItems.SelectedItem.ToString();
        try
        {
            Files file = new Files();
            file.userName = userName;
            file.directory = fileDirectory;
            DBConnection connection = new DBConnection();
            connection.AddFile(file);
        }
        catch (Exception)
        {
            MessageBox.Show("Failed database connection!");
        }
    }

然后,我有以下php文件:

<script type="text/javascript">
function process_match() {
  var rarray = new Array();
  $x = $("input[name=pair]:checked").val();
  $left = $x.charAt(0);
  $rite = $x.charAt($x.length-1);
  $car1a = document.getElementById("car"+$left+"_"+$rite+"_1").value;
  $car1b = document.getElementById("car"+$rite+"_"+$left+"_1").value;
  .....
  $hsb = document.getElementById("hs"+$rite+"_"+$left).value;

  rarray[0] = $left;
  rarray[1] = $rite;
  rarray[2] = $car1a;
  rarray[3] = $car1b;
  .....
  rarray[15] = $hsb;

  alert("1");
      $.post("./updpoule.php",
    {'results': rarray},
    function(data) {
      alert("2");
    }
  );
}
</script>

我已经将这些代码看作是类似问题的解决方案,但我无法使其发挥作用。 如果我运行代码,则会弹出警报(&#34; 1&#34;)。之后没有任何反应。没有创建文件/ tmp / q。但是,如果我调试页面,并设置$ .post所在的断点,然后单步执行,则创建文件/ tmp / q IS,而不是使用正确的内容..

任何建议都非常受欢迎。

谢谢, 汉斯

1 个答案:

答案 0 :(得分:1)

尝试从php脚本中返回一些内容。 例如,将其添加到文件末尾:

echo 'OK';
?>

而且,在你JS:

$.post("./updpoule.php", {'results': rarray}, function(data) {
  if (data === 'OK') {
    alert('ok');
  } else {
    console.log(data);
    alert('error');
  }
});

如果您弹出error,请在控制台上查看您从php获得的数据。