jquery $.ajax() 应用中的一点困惑,望高手点拨

quainyu 2013-08-12 11:05:43
test.php文件内容
-----------------------------------
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<script type="text/javascript" src="js/jquery-1.9.1.js"></script>
<script type="text/Javascript">
$(document).ready(function(){
$(".ajax_btn").click(function(){
$.ajax({
type:"POST",
url:"test2.php",
data:"name=12345",
success:function(data){
alert( data);
}
});

})

})
</script>
</head>
<body>
<button class="ajax_btn">clickme</button>
</body>
</html>
---------------
test2.php文件内容
-----------------
<?php
$name=$_POST["name"];

echo $name;

?>
--------------------
调试的内容
=================(Request-Line) POST /php/jobass/test2.php HTTP/1.1
Accept */*
Accept-Encoding gzip, deflate
Accept-Language zh-CN
Cache-Control no-cache
Connection Keep-Alive
Content-Length 0
Content-Type application/x-www-form-urlencoded; charset=UTF-8
DNT 1
Host localhost
Referer http://localhost/php/jobass/test.php
User-Agent Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)
X-Requested-With XMLHttpRequest
=================================================
问题在于,我用POST方式时候,弹出的ALERT对话框值为空,而用GET却能正确显示12345。这让我很困惑,求解惑。
...全文
163 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
jonny0220 2013-08-12
  • 打赏
  • 举报
回复
dataType: 这个就是你传过去的参数是什么类型的 可以是一个json类型的,也可以是一个文本类型的。 GET 提交是把参数显示到地址栏,不需要这样传。
quainyu 2013-08-12
  • 打赏
  • 举报
回复
问题已解决,见二楼 jonny0220 的解决方案。
潮起潮落 2013-08-12
  • 打赏
  • 举报
回复
引用 楼主 quainyu 的回复:
test.php文件内容 ----------------------------------- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <script type="text/javascript" src="js/jquery-1.9.1.js"></script> <script type="text/Javascript"> $(document).ready(function(){ $(".ajax_btn").click(function(){ $.ajax({ type:"POST", url:"test2.php", data:"name=12345", success:function(data){ alert( data); } }); }) }) </script> </head> <body> <button class="ajax_btn">clickme</button> </body> </html> --------------- test2.php文件内容 ----------------- <?php $name=$_POST["name"]; echo $name; ?> -------------------- 调试的内容 =================(Request-Line) POST /php/jobass/test2.php HTTP/1.1 Accept */* Accept-Encoding gzip, deflate Accept-Language zh-CN Cache-Control no-cache Connection Keep-Alive Content-Length 0 Content-Type application/x-www-form-urlencoded; charset=UTF-8 DNT 1 Host localhost Referer http://localhost/php/jobass/test.php User-Agent Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0) X-Requested-With XMLHttpRequest ================================================= 问题在于,我用POST方式时候,弹出的ALERT对话框值为空,而用GET却能正确显示12345。这让我很困惑,求解惑。
你用POST的话,试试写 data : {name:"12345"}
quainyu 2013-08-12
  • 打赏
  • 举报
回复
引用 1 楼 u010137670 的回复:
dataType:"text", 加这个试试
正解,请给点解释,然后就给你结贴加分,主要是GET为什么不影响
jonny0220 2013-08-12
  • 打赏
  • 举报
回复
dataType:"text", 加这个试试

52,798

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧