jsp如何利用Javascript来判断文本框输入内容是否合法?

jsp编程过程中,需要在输入数据完成后自动判断所输入的数据是否已经存在于数据库中,判断方法已经写好了,可是不知道怎么用JavaScript调用,请各位大侠帮帮忙……... jsp编程过程中,需要在输入数据完成后自动判断所输入的数据是否已经存在于数据库中,判断方法已经写好了,可是不知道怎么用JavaScript调用,请各位大侠帮帮忙…… 展开
 我来答
吃碗面再走呗
推荐于2016-11-26 · 超过19用户采纳过TA的回答
知道答主
回答量:73
采纳率:0%
帮助的人:68.7万
展开全部
我以前做的一个例子,给你发过来,js稍微改一下变量就可以了
js:

function checkLoginName() {
var loginName = document.myform.loginName.value;//改成你的变量
if (loginName == "" || loginName == null) {
alert('用户名不能为空!');
return false;
} else {
var url = "action.do?method=checkLoginName&loginName=" +loginName;//跳转的action
send(url);
}
}

var xmlHttp;
function createXmlHttp() {

if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
} else if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("MIcrosoft.XMLHttp");
}
}

function send(url) {
createXmlHttp();
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange = processRequest;
xmlHttp.send(null);
}

function processRequest() {
if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
var myfont = document.getElementById("name");//这个name跟html页面的name是对应的,不用改
while (myfont.hasChildNodes()) {
myfont.removeChild(myfont.firstChild);
}
var text = document.createTextNode();
text.nodeValue = xmlHttp.responseText;
myfont.appendChild(text);
}
}

}

-----------------------------------------------------------------------------------
action:

public ActionForward checkLoginName(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {

LoginDao dao=new LoginDao();

String loginName=request.getParameter("loginName");
loginName=new String(loginName.getBytes("ISO-8859-1"),"UTF-8");
System.out.println(loginName);
int num=dao.check(loginName);
if(num==0){
response.getWriter().println("可用");
response.getWriter().flush();
}else{
response.getWriter().println("已经使用");
response.getWriter().flush();
}
return null;
}
-----------------------------------------------------------------------------------------
dao:

public int check(String loginName){
Session ss=HibernateSessionFactory.getSession();
ss.beginTransaction();
Query q=ss.createQuery("select loginName from Login where loginName='"+loginName+"'");
List list=q.list();
ss.getTransaction().commit();
ss.close();
return list.size();
}

----------------------------------------------------------------------------------------------------------------------
html:
<tr>
<td width="100" align="right">
用户名:
</td>
<td align="left">
<input type="text" name="loginName" />  <input type="button" value="检查用户名" onclick="checkLoginName()">
<font color="red" size="2px" id="name"></font></td>
</tr>
focusheart
2010-09-08 · TA获得超过486个赞
知道小有建树答主
回答量:489
采纳率:0%
帮助的人:319万
展开全部
比如你用来判断的jsp叫做check.jsp:
<%
String key = request.getParameter('key');
// check...and done~
out.println('ok');
%>
那么你在那个页面上可以用jquery的ajax来发送给check.jsp做判断:
<script>
// 判断str是否合法
function check(str){
$.post(
'check,jsp',
{key:str},
function(data){
alert(data);
}
);
}
</script>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
liu198661hf3e
2015-10-19 · TA获得超过366个赞
知道小有建树答主
回答量:344
采纳率:0%
帮助的人:255万
展开全部
javascript 做客户端验证,比如是否为空,正则匹配,如果需要后台验证的(如是否唯一)需要用ajax访问后台,处理返回结果便可
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
429369452
2010-09-08 · 超过21用户采纳过TA的回答
知道答主
回答量:158
采纳率:0%
帮助的人:62.2万
展开全部
建议用Ajax,特别是jQuery
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式