使用AJAX获取来自PHP文件的响应
所以这里是我的问题,我使用AJAX(jQuery)将表单发布到process.php
但是页面实际上需要回显响应,如apple
或plum
。 我不知道如何采取从process.php
的反应,并将其存储为一个variables…
这是我迄今为止的代码:
<script type="text/javascript"> function returnwasset(){ alert('return sent'); $.ajax({ type: "POST", url: "process.php", data: somedata; success function(){ //echo what the server sent back... } }); } </script>
我也需要回应在json process.php
响应? 或将纯文本罚款?
对不起,如果这听起来像一个愚蠢的问题,这是我第一次在Ajax做这样的事情。
PS:如何在上面的代码中命名POST请求?
<?php echo 'apple'; ?>
<?php echo 'apple'; ?>
几乎可以满足你在服务器上的所有需求。
至于JS方面,服务器端脚本的输出作为parameter passing给成功处理函数,所以你会有
success: function(data) { alert(data); // apple }
好的做法是这样使用:
$.ajax({ type: "POST", url: "/ajax/request.html", data: {action: 'test'}, dataType:'JSON', success: function(response){ console.log(response.blablabla); // put on console what server sent back... } });
和PHP的一部分是:
<?php if(isset($_POST['action']) && !empty($_POST['action'])) { echo json_encode(array("blablabla"=>$variable)); } ?>
<script type="text/javascript"> function returnwasset(){ alert('return sent'); $.ajax({ type: "POST", url: "process.php", data: somedata; dataType:'text'; //or HTML, JSON, etc. success: function(response){ alert(response); //echo what the server sent back... } }); } </script>
在你的PHP文件中,当你使用json_encode( http://php.net/manual/en/function.json-encode.php )
例如
<?php //plum or data... $output = array("data","plum"); echo json_encode($output); ?>
在你的javascript代码中,当你的ajax完成了json编码的响应数据可以变成一个像这样的js数组:
$.ajax({ type: "POST", url: "process.php", data: somedata; success function(json_data){ var data_array = $.parseJSON(json_data); //access your data like this: var plum_or_whatever = data_array['output'];. //continue from here... } });
var data="your data";//ex data="id="+id; $.ajax({ method : "POST", url : "file name", //url: "demo.php" data : "data", success : function(result){ //set result to div or target //ex $("#divid).html(result) } });