ajax 与 php传值有关问题
ajax 与 php传值问题
ajax部分 index_test.php文件
<script language="javascript">
$(document).ready(function(){
$('#send_ajax').click(function (){
var username = $('#input1').val();
var age = $('#input2').val();
// var params = $('input').serialize(); //序列化表单的值
$.ajax({
url:'data_test.php', //后台处理程序
type:'post', //数据传送方式
dataType:'json', //接受数据格式
data:{'username':username,'age':age}, //要传送的数据
success:function(data){alert(data);}
});
});
});
</script>
后台脚本处理部分 data_test.php文件
<?php
$username = $_POST['username'];
echo $username;
发现这样传值不成功,脚本获取不到传过来的值
------解决思路----------------------
你有 dataType:'json',表示服务端应返回 json 格式串
而你服务端 echo $username;,只是输出了无格式串
此时 $.ajax 会走 error 分支,但你没有定义回调函数,所以看不到东西
------解决思路----------------------
data:{'username':username,'age':age}, 去掉引号
在php文件中引入用$_POST['username'] $_POST['age'] 引用 但是不能echo/var_dump之类的来查看
------解决思路----------------------
date里面的值需要加双引号
在使用json数据传输时是要使用eval函数编码的
ajax部分 index_test.php文件
<script language="javascript">
$(document).ready(function(){
$('#send_ajax').click(function (){
var username = $('#input1').val();
var age = $('#input2').val();
// var params = $('input').serialize(); //序列化表单的值
$.ajax({
url:'data_test.php', //后台处理程序
type:'post', //数据传送方式
dataType:'json', //接受数据格式
data:{'username':username,'age':age}, //要传送的数据
success:function(data){alert(data);}
});
});
});
</script>
后台脚本处理部分 data_test.php文件
<?php
$username = $_POST['username'];
echo $username;
发现这样传值不成功,脚本获取不到传过来的值
------解决思路----------------------
你有 dataType:'json',表示服务端应返回 json 格式串
而你服务端 echo $username;,只是输出了无格式串
此时 $.ajax 会走 error 分支,但你没有定义回调函数,所以看不到东西
------解决思路----------------------
data:{'username':username,'age':age}, 去掉引号
在php文件中引入用$_POST['username'] $_POST['age'] 引用 但是不能echo/var_dump之类的来查看
------解决思路----------------------
date里面的值需要加双引号
在使用json数据传输时是要使用eval函数编码的