我正在使用jquery和servlets开发一个应用程序。我一直在使用jquery主题滚轮进行接口 在我的Login.jsp
中 <script>
$(document).ready(function() {
$("#dialog").dialog();
});
</script>
<script>
$("#submit").click(function(){
$.ajax({
type:post,
url:"LoginServlet.java",
data:{
username:$('#username').val(),
password:$('#password').val() }
});
});
</script>
</head>
<body style="font-size:62.5%;">
<div id="dialog" title="Login">
<form id="LoginForm" method="post">
<fieldset>
<label>Username:</label>
<input type="text" id="username"></input><br></br>
<label>Password:</label>
<input type="password" id="pwd"></input><br></br>
<input type="submit" id="submit" value="Log In" align="middle"></input>
</fieldset>
</form>
</div>
</body>
</html>
在我的LoginServlet中,我检查密码和用户名是否匹配,如果匹配,我使用response.sendRedirect().
将用户重定向到其他页面但是当我输入凭据时,数据没有传递给servlet.Also我没有得到任何错误(用萤火虫检查)或任何类型的例外......
我对jquery和java都很新。我出错了
我也试过$("#LoginForm").submit(function(){ }
。为什么没有错误被抛出?我怎么知道我哪里出错了
答案 0 :(得分:0)
您的ajax调用的方法类型有错误 而不是:
$.ajax({
type:post
...
应该是这样的:
$.ajax({
type:"post",
...
希望这有帮助。
答案 1 :(得分:0)
尝试设置:
type: 'POST',
例如
<script>
$("#submit").click(function(){
$.ajax({
type: 'POST',
url:"LoginServlet.java",
data:{
username:$('#username').val(),
password:$('#password').val() }
});
});
</script>
firebug对请求说了些什么? (http://getfirebug.com/)
修改强>
重新创建了您的javascript和html @ http://jsfiddle.net/qYmkF/
在查看萤火虫时,我可以看到请求被解雇。
答案 2 :(得分:0)
您需要将代码包装在document.ready
中。它不起作用因为#submit
按钮尚不存在。所以改为:
<script>
$(document).ready(function(){ //This!!!
$("#submit").click(function(){
$.ajax({
type:'post',
url:"LoginServlet.java",
data:{
username:$('#username').val(),
password:$('#password').val() }
});
});
});
</script>
答案 3 :(得分:0)
您的密码ID错误,请将“密码”更改为“ pwd”
$("#submit").click(function(){
$.ajax({
type:'post',
url:'LoginServlet.java',
data:{
username:$('#username').val(),
password:$('#pwd').val()
}
}
);