如何实现以下操作:
1)通过JQuery从服务端读取XML数据;
var xmlobj;
$.ajax({
url:'/testdata'
,success: function(xml,s,v){
xmlobj = $(xml);
}
});
/testdata主要返回一段XML格式字符串,如
"<?xml version=\"1.0\" encoding=\"UTF-8\"?><paras><para guid=\"testname\">textnamevalue</para></paras>"
2)修改XML对象中的元素值;
__xml.find("para[guid=testname]").each(function(){
$(this).text("editedtestnamevalue");
});
3)将XML对象数据保存至服务端;
$.ajax({
type:"get"
,url:'/test'
,processData: false
,data:
,success: function(data){
}
});目前卡在3)上,求教
1)通过JQuery从服务端读取XML数据;
var xmlobj;
$.ajax({
url:'/testdata'
,success: function(xml,s,v){
xmlobj = $(xml);
}
});
/testdata主要返回一段XML格式字符串,如
"<?xml version=\"1.0\" encoding=\"UTF-8\"?><paras><para guid=\"testname\">textnamevalue</para></paras>"
2)修改XML对象中的元素值;
__xml.find("para[guid=testname]").each(function(){
$(this).text("editedtestnamevalue");
});
3)将XML对象数据保存至服务端;
$.ajax({
type:"get"
,url:'/test'
,processData: false
,data:
,success: function(data){
}
});目前卡在3)上,求教
解决方案 »
- GeoGlobe二维地图API的使用问题
- ★求助★大家帮忙看看下面这个js是怎么个加密方式啊。求解密
- javascript能否在传参的过程中,将一个最后一个参数数组展开成参数列表
- js不用src如何调用其他文件呢?
- 请问这个问号表达式怎么修改
- 按格式得到当天日期与当天日期后120天的日期怎么写
- 这句怎样写?
- 如何在JavaScript中调用JSP中的变量? 谢谢大家!
- 如何判断一个字符串里只有数字和逗号,而且数字之间以","分割?求正则表达式及javascript代码
- jq 如何使用 delegate 为表格某列未来的td添加“blur”事件?
- 新手求助
- document.execCommand('saveAs','')在IE6为何弹不出另存为窗口
$(this).text("editedtestnamevalue");
});如果仅仅是这点操作 还是给后台做吧 。
很快的 。
type:"post"其实有时候你要进行ajax操作观察可以用用firebug,他很清楚的展示了发生的一切
<html xmlns="http://www.w3.org/1999/xhtml" lang="UTF-8">
<head>
<title>home</title>
<script type="text/javascript" src="js/jquery-1.6.min.js" ></script>
<script type="text/javascript">
$(function(){
var objxml;
$.ajax({
type:"get"
,url:'/testdata'
,success: function(xml,s,v){
objxml = $(xml);
}
});
$("#btnsubmit").click(function(){
alert(objxml);
$.ajax({
type:"get"
,url:'/test?x=' + Math.random()
,processData: false
,data:objxml
,error:function()
{alert("K");}
,success: function(data){
alert(data);
}
});
});
});
</script>
</head>
<body>
<input type="button" id= "btnsubmit" value="submit" />
</body>
</html>服务端代码如下
package test;import java.io.IOException;
import javax.servlet.http.*;
import java.io.*;
@SuppressWarnings("serial")
public class test extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws IOException { req.setCharacterEncoding("UTF-8");
resp.setCharacterEncoding("UTF-8");
String __data = readXMLFromRequestBody(req);
resp.getWriter().println(__data);
}
private String readXMLFromRequestBody(HttpServletRequest request){
StringBuffer xml = new StringBuffer();
try {
BufferedReader reader = request.getReader();
while(true)
{
String line = reader.readLine();
if(line!=null)
{
xml.append(line);
}
else
{
break;
}
}
}
catch(Exception e) {
System.out.println("Error reading XML: " + e.toString());
}
return xml.toString();
}
}现在的问题是String __data取值总是空值
还有一个问题是type改为post,提交后走了error:function请各位帮忙啊
改成
objxml = xml;试试看呢
你接受的方法错了吧 ?
页面代码$(document).ready(function(){//页面加载时执行
$.ajax({
data:{"参数名","参数值"}
dataType:"html",
success:function(html){}
})
})
还有路径什么的我就不写上了哈。 后台页面的代码。比如就在
void page_load
{
//后台页面加载的时候执行,这个你可以给你的项目一个专门的后台解析页面。用$.ajaxstec*(*^忘记怎么写了,定义好,以后不再定义,就写传送的参数。
if(request.from["参数名"]!=null)
{
//如果取值不为空,证明接受到这个参数了。
resphones.clear();
resphones.write(request.from["参数名"].tostring());
resphones.end();
}
}大概就是这样嘛。request.from["参数名"]就是取post方式传过来的值的。 然后你在后台折腾好了就返回一个文本或者 html代码回去。如果
$.ajax({
data:{"参数名","参数值"}
dataType:"html",//这里换成XML。那么你就要往页面写一个XML文件,返回回来的就直接是个XML
success:function(html){}