<%@ WebHandler Language="C#" Class="Handler" %>
using System;
using SystemWeb;
public class Handler : I>要是没用json可以这样来,你在java类中,AJAX传值给前台时把你要传的值组装成String,比如你的值是:aa,bb,cc,就把这3个组装成字符串String str="aa:"+"bb:"+"cc";注意相互之间用了一个冒号做标示符,你在传值到JSP后通过JS的方法处理,比如:AJAX接收的是msg,你就这样处理:
var value=msgspilt(":");
alert(value[0]);
alert(value[1]);
alert(value[2]);
这样就能得到你要的值了用Jquery 中的Ajax是
$ajax({
type:"POST",
url:"prov/show1action",
data: "provprov_id="+pid+"&"+"provprov_name="+pName,
cache:false,
success:function(act)
{
var i =0;
eval("ps="+actprovss);
date后面是 客户端传来的值; url 是你要传值到的那里;success 是返回 你要的结果
json 就是按照一定的方法 将 对象、对象数组等 等转换成 固定格式。格式转换,转成大家都可识别的格式。不管在页面上、手机上都可识别。。
如果用 Jquery中的Ajax ,是必须用到Json。你可以自己写一个Json工具类。Json转换后的数据使Ajax 在页面上可以读取给你个例子,用得servlet,你可以改改
indexhtml
<html>
<head>
<title>第1个ajax例子</title>
<script type="text/javascript">
var xml>一般的做法是这样的,你这个列表的每一项都有一个id,这个id是唯一的。
跳转的时候,将id带在url上,如果目标链接是"ahtml",你点击了第一项(id=1),那么跳转的时候就加上id,变成"ahtmlid=1"。
在ahtml这个页面中,获取url上的参数id,通过这个id,向后端发送ajax请求,获取更多的详细信息,然后取到数据后,开始给页面渲染数据。一个简单的,一个复杂点的。
先说简单的,在客户端JSP页面上放两个select,一个的值是es,一个是gs,都隐藏起来,当sel1的click事件被触发时,判断选中的option,如果==dd,则显示es的Select,否则显示gs的Select。这样减少了同服务端的通讯。
复杂的,就是在sel1的click中做一次AJAX请求,将option传回服务端,服务端根据option的值来创建sel2的option,在返回客户端更新sel2。ajax的传值类似用java写窗口应用程序,通过按钮=》触发器=》接收函数来完成
1、jsp页面部分ajax传值
function liuyan_chafenyeshu(meiyetiaoshu){
$post("<%=requestgetContextPath()%>/LiuYanAction",{ method:"fenyeshu", tiaoshu:meiyetiaoshu },function (data){
$("#fenyeshu")html(data);
},"text");
}
原理解释:
这个是JS事件挂AJAX发送post方式的json数据。
这里是你需要的:json是通用的数据传递格式,JSON数据使用{}扩起来,里面使用","逗号把每个数据成员分开,然后每个数据成员都是key:val形式。
比如我上面的例子中有method:"fenyeshu"那么在servlet中的service可以使用String method = requestgetParameter("method")接到method:"fenyeshu"中的 fenyeshu。后面的tiaoshu等也是同样可接接到。
2、servlet 中webxml设置(不设置这个没办法传值)
<servlet>
<description></description>
<display-name>LiuYanAction</display-name>
<servlet-name>LiuYanAction</servlet-name>
<servlet-class>xxxxxxxxxxLiuYanAction</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LiuYanAction</servlet-name>
<url-pattern>/LiuYanAction</url-pattern>
</servlet-mapping>
原理解释:
jsp页面post的方法"<%=requestgetContextPath()%>/LiuYanAction"对应<url-pattern>/LiuYanAction</url-pattern>
然后在对应<servlet-name>LiuYanAction</servlet-name> 找到<display-name>LiuYanAction</display-name>传给执行的类xxxxxxxxxxLiuYanAction
3、xxxxxxxxxxLiuYanAction中接收ajax传过来的参数
public class LiuYanAction extends >
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)