急急急急急!script问题。

Aquarius_T 2011-11-16 02:28:57
我的验证怎么没反应?求解。

<script type="text/javascript" src="../js/jquery-1.4.min.js"></script>
<script type="text/javascript" src="../js/jquery.validate.js"></script>
<script type="text/javascript">
//var Flag={"email":false,"imagecode":false};
$(function(){
$("#id").blur(function(){
if(!$(this).val||!$(this).val.match(/([d])$/))
{
$("#id1").html("ID只能为数字");
}else{
$("#id1").html("输入正确");
}
});
});
</script>



<table cellpadding="0" cellspacing="0" border="0" class="form_table">
<tr>
<td align="right" valign="middle">
ID:
</td>
<td align="left" valign="middle">
<input type="text" name="id" id="id">
<span id="id1"></span>
</td>
</tr>
<tr>
<td align="right" valign="middle">
姓名:
</td>
<td align="left" valign="middle">
<input type="text" name="ename" id="ename">
<span id="ename" style="color:red"></span>
</td>
</tr>

...全文
208 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
峭沙 2011-11-17
  • 打赏
  • 举报
回复
[Quote=引用 22 楼 aquarius_t 的回复:]

引用 21 楼 axiheyhey 的回复:
错误:
1.val是一个函数,不是一个属性,调用的话应该是val();
2.正则写得乱七八糟的,LZ基本不会正则吧?
3.逻辑混乱

我没写正则。我现在的问题是,添加form标签,就不能验证,请看17楼。
[/Quote]没用正则那if(!$(this).val||!$(this).val.match(/([d])$/))这句话是什么。。还有我看不明白你17楼说的是什么,代码敢不敢加个“[code=HTML]”?
Aquarius_T 2011-11-17
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 axiheyhey 的回复:]
错误:
1.val是一个函数,不是一个属性,调用的话应该是val();
2.正则写得乱七八糟的,LZ基本不会正则吧?
3.逻辑混乱
[/Quote]


我没写正则。我现在的问题是,添加form标签,就不能验证,请看17楼。

峭沙 2011-11-17
  • 打赏
  • 举报
回复
错误:
1.val是一个函数,不是一个属性,调用的话应该是val();
2.正则写得乱七八糟的,LZ基本不会正则吧?
3.逻辑混乱
峭沙 2011-11-17
  • 打赏
  • 举报
回复
<!doctype html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Test</title>
<script type="text/javascript" src="../js/jquery-1.4.min.js"></script>
<script type="text/javascript" src="../js/jquery.validate.js"></script>
</head>
<body>
<script type="text/javascript">
$(function(){
$("#id").blur(function(){
var val = this.value,
tip = $("#id1");
if(!val){
tip.text('');
}else if(/^\d*$/.test(val)){
tip.text("输入正确");
}else{
tip.text("ID只能为数字");
}
});
});
</script>
<table cellpadding="0" cellspacing="0" border="0" class="form_table">
<tr>
<td align="right" valign="middle">ID:</td>
<td align="left" valign="middle">
<input type="text" name="id" id="id" />
<span id="id1"></span>
</td>
</tr>
<tr>
<td align="right" valign="middle">姓名:</td>
<td align="left" valign="middle">
<input type="text" name="ename" id="ename" />
<span id="ename" style="color:red"></span>
</td>
</tr>
</table>
</body>
</html>
Aquarius_T 2011-11-17
  • 打赏
  • 举报
回复
求解 。。。求解。。。
Aquarius_T 2011-11-17
  • 打赏
  • 举报
回复

<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>add Emp</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="css/style.css" />
<script type="text/javascript" src="js/jquery-1.4.min.js"></script>
<script type="text/javascript" src="js/jquery.validate.js"></script>
<script type="text/javascript">
function id1(){
var id = document.getElementById("id").value;
if(id==""){
alert("ID不能为空");
}
}
function ename(){
var ename = document.getElementById("ename").value;
if(ename==""){
alert("用户名不能为空");
}
}
</script>
</head>
<body>
<div id="wrap">
<div id="top_content">
<%@include file="header.jsp" %>
<div id="content">
<p id="whereami">
</p>
<h1>
添加雇员信息:
</h1>
<form action="add.do" method="post" id="f">
<table cellpadding="0" cellspacing="0" border="0" class="form_table">
<tr>
<td align="right" valign="middle">
ID:
</td>
<td align="left" valign="middle">
<input type="text" id="id" name="id" onblur="id1()">
</td>
</tr>
<tr>
<td align="right" valign="middle">
姓名:
</td>
<td align="left" valign="middle">
<input type="text" id="ename" name="ename" onblur="ename()">
</td>
</tr>
</table>
<!-- <p>-->
<!-- <input type="submit" class="button" value="确认" />    -->
<!-- <input type="button" class="button" value="取消" onclick="location='list.do'"/>-->
<!-- </p>-->
</form>
</div>
</div>
<%@include file="foot.jsp" %>
</div>
</body>
</html>





这样就不可以了。。
Aquarius_T 2011-11-17
  • 打赏
  • 举报
回复
我知道问题了,可以部分验证了,但是,为什么我添加<form></form>标签以后,有的验证就不行了

<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>add Emp</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="css/style.css" />
<script type="text/javascript" src="js/jquery-1.4.min.js"></script>
<script type="text/javascript" src="js/jquery.validate.js"></script>
<script type="text/javascript">
function id1(){
var id = document.getElementById("id").value;
if(id==""){
alert("ID不能为空");
}
}
function ename(){
var ename = document.getElementById("ename").value;
if(ename==""){
alert("用户名不能为空");
}
}
</script>
</head>
<body>
<div id="wrap">
<div id="top_content">
<%@include file="header.jsp" %>
<div id="content">
<p id="whereami">
</p>
<h1>
添加雇员信息:
</h1>
<-- <form action="add.do" method="post" id="f"> -->
<table cellpadding="0" cellspacing="0" border="0" class="form_table">
<tr>
<td align="right" valign="middle">
ID:
</td>
<td align="left" valign="middle">
<input type="text" id="id" name="id" onblur="id1()">
</td>
</tr>
<tr>
<td align="right" valign="middle">
姓名:
</td>
<td align="left" valign="middle">
<input type="text" id="ename" name="ename" onblur="ename()">
</td>
</tr>
</table>
<!-- <p>-->
<!-- <input type="submit" class="button" value="确认" />    -->
<!-- <input type="button" class="button" value="取消" onclick="location='list.do'"/>-->
<!-- </p>-->
<-- </form> -->
</div>
</div>
<%@include file="foot.jsp" %>
</div>
</body>
</html>


这样可以验证。
峭沙 2011-11-17
  • 打赏
  • 举报
回复
水平不怎滴口气还挺牛的?你知道document.id和document.name吗?加了<form>后<input type="text" id="ename" name="ename" onblur="ename()">就是表单元素,所以ename(document.ename的简写)指向的是这个input元素,而不是(window.)ename = function(){...}这个函数,当然会出问题。解决办法是改函数名,或表单的id和name
借用你的话,懂?
Aquarius_T 2011-11-17
  • 打赏
  • 举报
回复

<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>add Emp</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="css/style.css" />
<script type="text/javascript" src="js/jquery-1.4.min.js"></script>
<script type="text/javascript" src="js/jquery.validate.js"></script>
<script type="text/javascript">
function id1(){
var id = document.getElementById("id").value;
if(id==""){
alert("ID不能为空");
}
}
function ename(){
var ename = document.getElementById("ename").value;
if(ename==""){
alert("用户名不能为空");
}
}
</script>
</head>
<body>
<div id="wrap">
<div id="top_content">
<%@include file="header.jsp" %>
<div id="content">
<p id="whereami">
</p>
<h1>
添加雇员信息:
</h1>
<-- <form action="add.do" method="post" id="f"> -->
<table cellpadding="0" cellspacing="0" border="0" class="form_table">
<tr>
<td align="right" valign="middle">
ID:
</td>
<td align="left" valign="middle">
<input type="text" id="id" name="id" onblur="id1()">
</td>
</tr>
<tr>
<td align="right" valign="middle">
姓名:
</td>
<td align="left" valign="middle">
<input type="text" id="ename" name="ename" onblur="ename()">
</td>
</tr>
</table>
<!-- <p>-->
<!-- <input type="submit" class="button" value="确认" />    -->
<!-- <input type="button" class="button" value="取消" onclick="location='list.do'"/>-->
<!-- </p>-->
<-- </form> -->
</div>
</div>
<%@include file="foot.jsp" %>
</div>
</body>
</html>



17楼的代码<form></form>标签注掉了,可以验证,18楼的代码是<form></form>标签没有注掉,验证就出错了,懂?
yibey 2011-11-16
  • 打赏
  • 举报
回复

<html>
<head>
<title></title>
<script type="text/javascript" src="jquery-1.4.js"></script>
<script type="text/javascript" src="jquery.validate.js"></script>
<script type="text/javascript">
// //var Flag={"email":false,"imagecode":false};
// $(function () {
// $("#id").blur(function () {
// if (!$(this).val() || !$(this).val().match(/([d])$/)) {
// //alert(1);
// $("#id1").html("中文");
// } else {
// alert(2);
//// $("#id1").html("asdfa111");
// }
// });
// });

$(function () {
$("#id").blur(function () {
if (!$(this).val() || !$(this).val().match(/([d])$/)) {
$("#id1").html("ID只能为数字");
} else {
$("#id1").html("输入正确");
}
});
});


</script>
</head>
<body>
<table cellpadding="0" cellspacing="0" border="0" class="form_table">
<tr>
<td align="right" valign="middle">
ID:
</td>
<td align="left" valign="middle">
<input type="text" name="id" id="id" />
<span id="id1"></span>
</td>
</tr>
<tr>
<td align="right" valign="middle">
姓名:
</td>
<td align="left" valign="middle">
<input type="text" name="ename" id="ename" />
<span id="ename" style="color: red"></span>
</td>
</tr>
</table>
</body>
</html>





经过验证这个jquery1.4.2下是没有问题的,
不过val是一个函数必须要写成val()
还有你的正则表达式是不对的,这种只能输入数字的地方不要再过后验证了。一般使用是keydown事件里直接不让用户输入。 楼主请确保你的引用的JQUERY路径是正确的
三石-gary 2011-11-16
  • 打赏
  • 举报
回复
就不去改你的代码了。。给个做参考吧
三石-gary 2011-11-16
  • 打赏
  • 举报
回复
就不去改你的代码了。。给个做参考吧
三石-gary 2011-11-16
  • 打赏
  • 举报
回复
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
function checkNumber(e) {
var key = window.event ? e.keyCode : e.which;
var keychar = String.fromCharCode(key);
var el = document.getElementById('test');
var msg = document.getElementById('msg'); reg = /\d/;
var result = reg.test(keychar);
if (!result) {
el.className = "warn";
msg.innerHTML = "只能输入数字";
return false;
}
else {
el.className = "";
msg.innerHTML = "";
return true;
}
}
</script>
</head>
<body>
<div id="test"> 请输入数字:<input type="text" onkeypress="return checkNumber(event);" /> <span id="msg"></span></div>
</body>
</html>
Aquarius_T 2011-11-16
  • 打赏
  • 举报
回复
咋没人了嫩嫩恩恩嫩
Aquarius_T 2011-11-16
  • 打赏
  • 举报
回复
。。。。。。。。。。。纠结 纠结 纠结。
yibey 2011-11-16
  • 打赏
  • 举报
回复
哥们你有地址么,有的话直接发出来我帮你调试下好了
Aquarius_T 2011-11-16
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 yibey 的回复:]
你验证过1楼的么,再说你可以打开firebug调试下设置个断点,哪怕是IE也可以用IEdevelop F12就可以打开了
[/Quote]


1楼的验证了,不行。
yibey 2011-11-16
  • 打赏
  • 举报
回复
你验证过1楼的么,再说你可以打开firebug调试下设置个断点,哪怕是IE也可以用IEdevelop F12就可以打开了
Aquarius_T 2011-11-16
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 im110 的回复:]
<script type="text/javascript">
$("#id").blur(function(){
if(!$(this).val||!$(this).val.match(/([d])$/))
{
$("#id1").html("ID只能为数字");
}else{
$("#id1").html("输入正确");
}
});
</script……
[/Quote]

有差么?
Aquarius_T 2011-11-16
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 xp447196763 的回复:]
jquery 不太懂,我用JS的代码给你看看

JScript code

var id = document.getElementById("id");
id.blur=function(){};
function checkID(){
var ID = doucment.getElementById("id").value;
var str = /^\d+$/.……
[/Quote]

还不行,好像不能触发上面的验证,郁闷。
加载更多回复(5)

87,989

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧