我有以下代码检查卷号是否在postname变量选择的数据库中有效。它在早期版本中工作,我没有引入第二个变量postname。但目前,此代码无效。这里的错误是什么?
$(document).ready(function() { //function to check rollno is valid
$('#roll').keyup(function(event) {
var rolll=$('#roll').val();
var postname=$('#post').val();
$.get('CheckRollValidity',{roll:rolll},{post:postname},function(responseText) {
$('#status1').text(responseText);
});
});
});
的Servlet
roll = request.getParameter("roll");
temp = request.getParameter("post");
table1 = "dbo."+post;
table2 = "dbo.user_candidates";
try
{
if (roll.length() < 10 || roll.length() > 10) {
result = "Please enter your " + len + "-digits roll number.";
count1 = 1;
}
else if (!roll.matches("[0-9]*"))
{
result = "Please enter digits only";
count1 = 1;
}
if (count1 == 0)
{
//database work
result="OK";
}
else
{
result = "Error";
}
}
response.setContentType("text/plain");
response.setCharacterEncoding("UTF-8");
response.getWriter().write(result);
另外,我可以通过ajax做同样的事吗?在这里,我不希望代码按下提交按钮。相反,工作正在按键发生。
答案 0 :(得分:2)
你不能发送两个对象,你必须使用一个具有两个值的对象,否则第二个对象被视为应该是回调的参数
$.get('CheckRollValidity',{roll:rolll, post:postname},function(responseText) {
$('#status1').text(responseText);
});