ajax就是异步调用,一般的例子都是调用servlet,Lz应该明白struts的action其实就是servlet。
所以这样理解就可以了。Ajax实现三级联动下拉框
http://www.blogjava.net/rickhunter/articles/62571.html这个例子就是ajax+struts的,没有使用任何ajax框架。最后要指出一点,ajax的框架没有一个可以很好的与struts1.x结合的。
所以这样理解就可以了。Ajax实现三级联动下拉框
http://www.blogjava.net/rickhunter/articles/62571.html这个例子就是ajax+struts的,没有使用任何ajax框架。最后要指出一点,ajax的框架没有一个可以很好的与struts1.x结合的。
解决方案 »
- 用POI把excel的数据导入mysql数据库
- 求助一个ssi的例子 100
- HTML鼠标滑动分页有点小问题.
- 哪位有codeLogic类似的java代码查看器
- Linux上安装配置使用Tomcat说明文档和JDK环境变量配置
- EJB3.0的stateless session bean 的困惑?
- spring发送邮件问题,请进来瞧一下吧
- 请问在weblogic中如何加入Borland Jbuilder的数据库的jdbc驱动?
- hibernate一个简单的例子,出现HibernateException异常..
- 实体类的设计问题
- 关于通过struts的action转发后的页面显示的问题
- 工程移到另台计算机不能用???
这是我的代码
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBk">
<title>ajax+struts</title>
</head>
<script type="text/javascript" >
var xmlHttp;
function createXMLHttpRequest() {
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}
}
function testName()
{
alert("start");
createXMLHttpRequest();
var url="/ajax.do";
xmlHttp.open("GET", url,true);
xmlHttp.onreadystatechange=callback;
xmlHttp.send(""); }
function callback() {
if (xmlHttp.readyState == 4) {
alert("sf");
if (xmlHttp.status == 200) {
alert("sfffff");
setData();
}
}
}
function setData() {
var view_name=document.getElementById("view_name");
if(xmlHttp.responseText==0){
view_name.style.color='green';
view_name.innerHTML='该用户名可以正常使用';
}else if(xmlHttp.responseText==1){
view_name.style.color='red';
view_name.innerHTML='该用户名已经被使用';
}else{
view_name.style.color='red';
view_name.innerHTML='该用户名含有非法字符!';
}
}
</script>
<body>
<h1><input name="username" type="text" maxlength="20" />
<input id="chk-name-btn" type="button" value="检测帐号" onclick="testName();" />
<div id="view_name"></div>
</h1>
</body>
</html>
这是action
package app;import java.io.PrintWriter;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;public class AjaxAction extends Action {
public ActionForward execute(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception {
PrintWriter out = response.getWriter();
out.print(1);//ajax取得都是字符的输出。如果数据量大的话,还可以用xml来发送和接受
return null;
}
}
我的struts-config
<action type="app.AjaxAction"
validate="false"
scope="request"
path="/ajax">
</action>
我把url改成url=../ajax.do也没有用啊!换成 工程名/ajax.do也没有用啊
我的jsp文件放在一个文件夹下的!
不知道为什么