社区
Java SE
帖子详情
ajax如何传递对象
great_king
2008-04-07 08:00:25
刚刚学习ajax很菜,呵呵,所以这个问题也很菜。请各位老鸟帮忙解答。
我学习ajax后知道通过它,可以使用javascript很方便的与服务器进行数据传递。但是它的返回值只能以文本或xml的格式处理。有没有方法让返回值直接以对象的形式处理呢。就像jsp的隐式对象那样。这样调用就更方便啦。
...全文
1323
7
打赏
收藏
ajax如何传递对象
刚刚学习ajax很菜,呵呵,所以这个问题也很菜。请各位老鸟帮忙解答。 我学习ajax后知道通过它,可以使用javascript很方便的与服务器进行数据传递。但是它的返回值只能以文本或xml的格式处理。有没有方法让返回值直接以对象的形式处理呢。就像jsp的隐式对象那样。这样调用就更方便啦。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
java0000000
2008-04-11
打赏
举报
回复
只要有介质传输。就可以转化成对象
wuchao911
2008-04-08
打赏
举报
回复
function requestHttp(){
var request;
if(window.XMLHttpRequest) {
request = new XMLHttpRequest();
if(request.overrideMimeType) {request.overrideMimeType('text/xml');
}
} else if(window.ActiveXObject) {
var versions = ['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.7.0', 'Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP'];
for(var i=0; i<versions.length; i++) {try
{request = new ActiveXObject(versions[i]);break;}
catch(e) {}
}}
return request;
}
function xmlhttp(){
this.r=requestHttp();
}
xmlhttp.prototype.postopen=function(url,data){
this.r.open('POST',url,false);
this.r.setrequestheader("content-type","application/x-www-form-urlencoded");
this.r.onreadystatechange = ReadyStateChange(this);
if(typeof(data)=='undefined')
this.r.send();
else
this.r.send(data);
}
xmlhttp.prototype.getopen=function(url){
if(window.XMLHttpRequest) {this.r.open('GET',url);
this.r.onreadystatechange = ReadyStateChange(this);
this.r.send(null);
} else {
this.r.open("GET", url, true);
this.r.onreadystatechange = ReadyStateChange(this);
this.r.send();
}
}
ReadyStateChange=function(obj){
return function(){
if(obj.r.readyState==4){
obj.status=obj.r.status;
obj.text=obj.r.responseText;
obj.body=obj.r.responseBody;
callpage();
}
}
}
把这个别存为Shopajax.js
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script type="text/javascript" src="shopajax.jss"></script>
</HEAD>
<BODY>
<div id="as"></div>
<SCRIPT LANGUAGE="JavaScript">
<!--
var ajax=new xmlhttp();
debugger
ajax.getopen("1.html");
function callpage(){
if(ajax.status==0){//本地为0,远程为200
var obj=eval('('+ajax.text+')');
document.getElementById("as").innerHTML="年纪:"+obj.Age+"<br>薪水:"+obj.Money;
}
}
//-->
</SCRIPT>
</BODY>
</HTML>
这个随便存一个页面保存为index.html
{"Money":2000.00,"Age":21}
把这个存成一个1.html
保存完后,点击Index.html就可以看到Div里面有值了。值是从1.html里面取到的。这个过程实现 了Ajax
ee4456
2008-04-07
打赏
举报
回复
额,貌似JSONString比XML稍微方便点,支持.属性。。。你可以试试,不过JS没见过直接传一个JAVA对象过去,你可以利用现有封装好的AJAX框架,因为JS不认识JAVA的对象,可以用DWR进行配置,用<convert>标签。。
eswn
2008-04-07
打赏
举报
回复
楼主可以考虑对象的序列化.通过js来显示.
justicesun
2008-04-07
打赏
举报
回复
[Quote=引用 3 楼 great_king 的回复:]
xmlhttpRequest,根据我得到的资料只能传递文本或xml。没有取得对象的方法。
[/Quote]
把重要信息传过去不就行了...实在没必要传一整个对象...
chenhongxin
2008-04-07
打赏
举报
回复
xmlhttpRequest 通过这个东传的,这东西是AJAX的核心内容...
great_king
2008-04-07
打赏
举报
回复
xmlhttpRequest,根据我得到的资料只能传递文本或xml。没有取得对象的方法。
Ajax
Request(
Ajax
使用包)
1. **JavaScript**: 驱动
Ajax
的核心语言,通过创建XMLHttpRequest
对象
来发送异步请求到服务器。 2. **XMLHttpRequest
对象
**: JavaScript内置的
对象
,允许开发者在后台与服务器交换数据,而不会中断用户的交互。 3. *...
Ajax
教程
- **异步通信**:
Ajax
的核心是浏览器内置的`XMLHttpRequest`
对象
,它允许JavaScript在后台与服务器通信,而不会打断用户的交互。 - **局部刷新**:
Ajax
可以只更新页面的一部分,而不是整个页面,提高用户体验。 ###...
Jquery.json.js
jQuery提供了方便的方法来处理JSON数据,包括`$.getJSON()`和`$.
ajax
()`等函数,可以方便地从服务器获取JSON数据并将其转化为JavaScript
对象
,或者将JavaScript
对象
转换为JSON字符串发送到服务器。 **jQuery的get...
Jquery
Ajax
传递
对象
数组
通过
Ajax
传递
对象
数组,使用JSON.stringify().
ajax
传递
对象
$.
ajax
({ type: "POST", dataType: "json", contentType:"application/json", url: "/xxx", data: JSON.stringify(param), success: function (result) { console.log(result) } }); 后端.
Java SE
62,623
社区成员
307,257
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章