问题描述:
在jsp中实现验证码并将表单的submit按钮设置为验证失败时不提交表单。
解决方案:
使用javascript实现验证码功能,并在submit中设置 onclick事件为“return validate()”,注意:一定要有return。
PS:插入代码片好像出现了一点毛病,使用语句附在此处:
<input type="text" οnclick="createCode()" readonly="readonly" id="checkCode" class="unchanged" style="width: 80px" />
<input type="submit" οnclick="return validate()" value="注册" />
示例代码:
<script language="javascript" type="text/javascript">
var code;
function createCode() {
code = "";
var codeLength = 4;
var checkCode = document.getElementById("checkCode");
var selectChar = new Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9);
for (var i = 0; i < codeLength; i++) {
var charIndex = Math.floor(Math.random() * 10);
code += selectChar[charIndex];
}
if (checkCode) {
checkCode.className = "code";
checkCode.value = code;
}
}
var validate = function() {
var inputCode = document.getElementById("input1").value;
if (inputCode.length <= 0) {
alert("请输入验证码!");
return false;
} else if (inputCode != code) {
alert("验证码输入错误!");
createCode();
return false;
} else return true;
};
</script>
<input type="text" οnclick="createCode()" readonly="readonly" id="checkCode" class="unchanged" style="width: 80px" /> <input type="submit" οnclick="return validate()" value="注册" />