急!!!dwr框架做的ajax点击无反应!!

coffee__lover 2011-07-22 04:05:36
JSP页面
<%@ page language="java" import="java.util.*" pageEncoding="GB2312"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>验证用户</title>
<script type="text/javascript" src="dwr/util.js"></script>
<script type="text/javascript" src="dwr/engine.js"></script>
<script type="text/javascript" src="dwr/interface/studentdao.js"></script>
<script type="text/javascript">

function checkName()
{
var sname=$("text").value;

alert(sname);

studentdao.isExists(sname,show);
}
function show(boolean)
{
if(boolean)
{
dwr.util.setValue("result","用户名已经存在");

}else

{
dwr.util.setValue("result","用户名可以使用");
}

}
</script>
</head>
<body>
<form action="" name="f1">

请输入用户名:<input id="text"><div id="result"></div><br>
<input type="button" value="验证" onclick="checkName()">
</form>

</body>
</html>

--------------------------------------------------
java文件

package dao;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class StudentDao {
private Connection con;
public StudentDao(){
try {

Class.forName("com.mysql.jdbc.Driver");

con=DriverManager.getConnection("jdbc:mysql://localhost:3306/test?user=root&password=myhero");

System.out.println(con.isClosed());

} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

public boolean isExists(String sname){

String sql="select * from student where sname=?";
try {
PreparedStatement pstmt=con.prepareStatement(sql);

pstmt.setString(1, sname);

ResultSet rst=pstmt.executeQuery();
if(rst.next()){
return true;
}
} catch (SQLException e) {
e.printStackTrace();
}
return false;
}
}

----------------------------------------------
web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>dwr-Invoke</servlet-name>
<servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>dwr-Invoke</servlet-name>

<url-pattern>/dwr/*</url-pattern>

</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>

----------------------------------------
dwr.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC

"-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN"

"http://getahead.org/dwr/dwr20.dtd">
<dwr>
<allow>
<create javascript="studentdao" creator="new">
<param name="class" value="dao.StudentDao"></param>
</create>

</allow>
</dwr>
----------------------

本人新手。。不知道是哪里的问题 点击按钮不会调用JS 帮帮忙啊 重分
...全文
91 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
caibird1024 2011-07-22
  • 打赏
  • 举报
回复
把var sname=$("text").value;后的.value去掉。直接var sname=$("text");取值即可
风柏杨 2011-07-22
  • 打赏
  • 举报
回复
应该是你checkName()方法里的 var sname=$("text").value;报错了,至于错误产生的原因,有可能是你前面的库文件引入不正确,你可以试一下将$号改成document.getElementById("text")来测试一下
本文介绍了一个使用DWR(AJAX框架)实现下拉框选项动态加载的例子。通过JavaScript函数调用DWR提供的util.addOptions方法为不同的