
是因为数据格式有问题,有两种方法。
修改前端接收数据的格式为文本text:
$ajax({url: 'gethintphp',
type: 'get',
dataType: 'text',//html,text,json
data: {'ccc': 'a'},
success: function(obj){
$('#resText')html(obj)
}
})
2 修改后端发出数据的格式为json格式:
<php$action = $_GET['ccc'];
if($_GET['ccc'] == 'a'){
# code
echo json_encode("a");
}
else{
echo json_encode("b");
}
>
这是我笔记
什么是 AJAX ?
AJAX = 异步 JavaScript 和 XML。
AJAX 是一种用于创建快速动态网页的技术。
通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。
有很多使用 AJAX 的应用程序案例:新浪微博、Google 地图、开心网等等。
一 AJAX - 创建 XML>
所有现代浏览器(IE7+、Firefox、Chrome、Safari 以及 Opera)均内建 XML>
创建 XML>
XML>
老版本的 Internet Explorer (IE5 和 IE6)使用 ActiveX 对象:
XML>
为了应对所有的现代浏览器,包括 IE5 和 IE6,请检查浏览器是否支持 XML>
对象。如果不支持,则创建 ActiveXObject :
var xml>
if (windowXML>
{// code for IE7+, Firefox, Chrome, Opera, Safari
xml>
}
else
{// code for IE6, IE5
xml>
}
二 AJAX - 向服务器发送请求
读取test1txt文本
xml>
xml>
方法 描述
open(method,url,async) 规定请求的类型、URL 以及是否异步处理请求。
• method:请求的类型;GET 或 POST
• url:文件在服务器上的位置
• async:true(异步)或 false(同步)
send(string) 将请求发送到服务器。
• string:仅用于 POST 请求
GET 请求
一个简单的 GET 请求:
xml>
xml>
在上面的例子中,您可能得到的是缓存的结果比如读取文件test1txt一次后,再次点击按钮不读取
为了避免这种情况,请向 URL 添加一个唯一的 ID:或者在后面添加用个变动的字符
xml>
xml>
POST 请求
一个简单 POST 请求:
xml>
xml>
如果需要像 HTML 表单那样 POST 数据,请使用 setRequestHeader() 来添加 >
xml>
xml>
xml>
方法 描述
setRequestHeader(header,value) 向请求添加 >
• header: 规定头的名称
• value: 规定头的值
url - 服务器上的文件
异步 - True 或 False?
AJAX 指的是异步 JavaScript 和 XML(Asynchronous JavaScript and XML)。
XML>
xml>
对于 web 开发人员来说,发送异步请求是一个巨大的进步。很多在服务器执行的任务都相当费时。AJAX 出现之前,这可能会引起应用程序挂起或停止。
通过 AJAX,JavaScript 无需等待服务器的响应,而是:
在等待服务器响应时执行其他脚本
当响应就绪后对响应进行处理
Async = true
当使用 async=true 时,请规定在响应处于 onreadystatechange 事件中的就绪状态时执行的函数:
xml>
{
if (xml>
{
documentgetElementById("myDiv")innerHTML=xml>
}
}
xml>
xml>
三 AJAX - 服务器响应
接收传送过来的数据,用对应语言的from 或get方法
输出文本在客户端用
如需获得来自服务器的响应,请使用 XML>
responseText 属性
documentgetElementById("myDiv")innerHTML=xml>
responseXML 属性
xmlDoc=xml>
txt="";
x=xmlDocgetElementsByTagName("ARTIST");
for (i=0;i<xlength;i++)
{
txt=txt + x[i]childNodes[0]nodeValue + "<br />";
}
documentgetElementById("myDiv")innerHTML=txt;
四 AJAX - onreadystatechange 事件
通过事件来触发判断是否接收成功和接收数据改变前台内容当请求被发送到服务器时,我们需要执行一些基于响应的任务。
每当 readyState 改变时,就会触发 onreadystatechange 事件。readyState 属性存有 XML>
下面是 XML>
属性 描述
onreadystatechange 存储函数(或函数名),每当 readyState 属性改变时,就会调用该函数。
readyState 存有 XML>
• 0: 请求未初始化
• 1: 服务器连接已建立
• 2: 请求已接收
• 3: 请求处理中
• 4: 请求已完成,且响应已就绪
status 200: "OK"
404: 未找到页面
使用 Callback 函数
callback 函数是一种以参数形式传递给另一个函数的函数。
如果您的网站上存在多个 AJAX 任务,那么您应该为创建 XML>
该函数调用应该包含 URL 以及发生 onreadystatechange 事件时执行的任务(每次调用可能不尽相同):
<script type="text/javascript">
var xml>
function loadXMLDoc(url,cfunc)
{
if (windowXML>
{// code for IE7+, Firefox, Chrome, Opera, Safari
xml>
}
else
{// code for IE6, IE5
xml>
}
xml>
xml>
xml>
}
function myFunction()
{
loadXMLDoc("/ajax/test1txt",function()
{
if (xml>
{
documentgetElementById("myDiv")innerHTML=xml>
}
});
}
</script>
服务器端通对应的方法POST GET 等 接收 输出 是直接输出
以上就是关于ajax 获取不到值全部的内容,包括:ajax 获取不到值、ajax读取文本文件的格式,该怎么处理、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)