我用jQuery的ajax和我的Ajax网址调用另一个jsp页面提交表单数据到数据库问题是每当我运行插入查询,它的答复“空值不能插入到数据库”有点例外,但每当我重新加载相同的页面并点击提交按钮,它就会被提交到数据库。 我认为这个问题是像回传方法, 我是新来的阿贾克斯所以请需要你的帮助......如何处理jquery ajax与数据库更新的jsp?
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#save').click(function()
{
$.ajax({
type: "post",
url: "test.jsp", //this is my servlet
data: "input=" +$('#id').val()+"&output="+$('#op').val(),
success: function(msg){
$('#output').append(msg);
}
});
});
});
</script>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
input:<input id="id" type="text" name="" value="" /><br></br>
output:<input id="op" type="text" name="" value="" /><br></br>
<input type="button" value="save" name="save" id="save"/>
<div id="output"></div>
</body>
JSP:
<%@page import ="com.connectionUtil.ConnectionUtil"%>
<!DOCTYPE html>
<script src="js/jquery.min.js" type="text/javascript"></script>
<% String id = request.getParameter("input");
try {
Connection con = ConnectionUtil.getConnection();
String sql = "insert into test(ID,...) values ('" + id + "',...)";
PreparedStatement ps = con.prepareStatement(sql);
ps.executeUpdate();
} catch (SQLException sqe) {
out.println(sqe);
}%>
<body> <h4><%=id%> is stored </h4> </body> </html>
带'id ='call''的元素在哪里? – anu
@anu对不起,我编辑了它.. – kAmol
检查控制台这个ajax调用及其响应。它会给你更多关于这个问题的想法 – anu