循环中每个项目的javascript onblur函数
我已经在数据库中的一列中插入了一些项,但是如何在循环中执行onblur函数来验证这些项??例如,验证循环中每个项目的javascript onblur函数,javascript,java,validation,jsp,Javascript,Java,Validation,Jsp,我已经在数据库中的一列中插入了一些项,但是如何在循环中执行onblur函数来验证这些项??例如,验证NAME如果为空,则提示警报;如果NRIC长度小于某个长度,则提示警报消息。我怎样表演 <script> function fnfunction(??) { //no idea how to do validation for each item } </script> <% String SQL = "SELECT * F
NAME
如果为空,则提示警报;如果NRIC
长度小于某个长度,则提示警报消息。我怎样表演
<script>
function fnfunction(??)
{
//no idea how to do validation for each item
}
</script>
<%
String SQL = "SELECT * FROM TB_BS_WITH UR";
String VALUE1 = "";
String ROW_NO = "";
String COL_NO = "";
DB_Contact.makeConnection();
DB_Contact.executeQuery(SQL);
while(DB_Contact.getNextQuery())
{
VALUE1 = DB_Contact.getColumnString("VALUE1");
ROW_NO = DB_Contact.getColumnString("ROW_NO");
COL_NO = DB_Contact.getColumnString("COL_NO");
%>
<table>
<tr>
<%StringTokenizer st1=n ew StringTokenizer(VALUE1, "^"); while(st1.hasMoreTokens()){%>
<th class="fontSection">
<%=st1.nextToken() %>
</th>
<%}%>
</tr>
<%for(int i=0;i<Integer.parseInt(ROW_NO);i++){ %>
<tr>
<%for(int j=0;j<Integer.parseInt(COL_NO);j++){ %>
<td>
<input type="text"name="<%=j%>_NAME_<%=i %>" id="<%=j%>_NAME_<%=i %>" onblur="fnfunction(???)">
</td>
<%}%>
</tr>
<%}%>
</table>
<%
} DB_Contact.takeDown();
%>
函数fn函数(?)
{
//不知道如何对每个项目进行验证
}
电流输出。。。如何验证每个列的有效性?
要在
blur
上进行验证,可以执行以下操作。不要在
input
标记中内联分配事件,请在加载页面后分配
window.addEventListener('load', initPage, false);
// add blur event to all inputs
function initPage(event) {
var inputs = document.getElementsByTagName('INPUT');
for (var i = 0; i < inputs.length; i++) {
// only check text fields
if (e.target.type === 'text') {
inputs[i].addEventListener('blur', validateForm, false);
}
}
}
// check value of blurred element
function validateForm(e) {
e = e || window.event;
e.target = e.target || e.srcElement;
// assuming id will always be --> #_FieldName_#
var fieldName = e.target.id.split('_')[1];
switch (fieldName) {
case 'Name':
if (e.target.value === '') {
alert(fieldName + ' cannot be blank!');
e.target.focus();
}
break;
case 'NRIC':
if (Number(e.target.value) < 10) {
alert(fieldName + ' cannot be less than 10!');
e.target.focus();
}
break;
}
}
window.addEventListener('load',initPage,false);
//将模糊事件添加到所有输入
函数初始化页(事件){
var inputs=document.getElementsByTagName('INPUT');
对于(变量i=0;i##u字段名_#
var fieldName=e.target.id.split(“”“)[1];
交换机(字段名){
案例“名称”:
如果(e.target.value==''){
警报(fieldName+'不能为空!');
e、 target.focus();
}
打破
案例“NRIC”:
if(数字(如目标值)<10){
警报(fieldName+'不能小于10!');
e、 target.focus();
}
打破
}
}
要在blur
上进行验证,可以执行以下操作。不要在
input
标记中内联分配事件,请在加载页面后分配
window.addEventListener('load', initPage, false);
// add blur event to all inputs
function initPage(event) {
var inputs = document.getElementsByTagName('INPUT');
for (var i = 0; i < inputs.length; i++) {
// only check text fields
if (e.target.type === 'text') {
inputs[i].addEventListener('blur', validateForm, false);
}
}
}
// check value of blurred element
function validateForm(e) {
e = e || window.event;
e.target = e.target || e.srcElement;
// assuming id will always be --> #_FieldName_#
var fieldName = e.target.id.split('_')[1];
switch (fieldName) {
case 'Name':
if (e.target.value === '') {
alert(fieldName + ' cannot be blank!');
e.target.focus();
}
break;
case 'NRIC':
if (Number(e.target.value) < 10) {
alert(fieldName + ' cannot be less than 10!');
e.target.focus();
}
break;
}
}
window.addEventListener('load',initPage,false);
//将模糊事件添加到所有输入
函数初始化页(事件){
var inputs=document.getElementsByTagName('INPUT');
对于(变量i=0;i##u字段名_#
var fieldName=e.target.id.split(“”“)[1];
交换机(字段名){
案例“名称”:
如果(e.target.value==''){
警报(fieldName+'不能为空!');
e、 target.focus();
}
打破
案例“NRIC”:
if(数字(如目标值)<10){
警报(fieldName+'不能小于10!');
e、 target.focus();
}
打破
}
}
你可以像下面这样做(一种方式):——
在jsp中:-
<input type="text"name="<%=j%>_NAME_<%=i %>" id="<%=j%>_NAME_<%=i %>" onblur="validateInput("+<%=j%>+",this)">
你可以像贝娄那样做(一种方式):——
在jsp中:-
<input type="text"name="<%=j%>_NAME_<%=i %>" id="<%=j%>_NAME_<%=i %>" onblur="validateInput("+<%=j%>+",this)">
嗯..关于字段名。。不是标题的名称。。它是一个输入标记。。我不能使用switch case。名称将是0\u name\u 0,1\u name\u 0,2\u name\u 0,3\u name\u 0这就是为什么我
split
on>来获取id
hmm]的中间部分。关于字段名。。不是标题的名称。。它是一个输入标记。。我不能用switch case。名称将是0\u name\u 0、1\u name\u 0、2\u name\u 0、3\u name\u 0这就是为什么我split
on>来获取id
hmm的中间部分。。不能为我的案子工作。。因为项目位置不固定。。示例:第一个表可能是NAME^NRIC/FIN^DOB^occulation,第二个表可能是NAME^NRIC/FIN^occulation,如果我使用cellNo==3来验证DOB,那么当它被占用时将出现错误..hmm。。不能为我的案子工作。。因为项目位置不固定。。示例:第一个表可能是NAME^NRIC/FIN^DOB^occulation,第二个表可能是NAME^NRIC/FIN^occulation,如果我使用cellNo==3验证DOB,当它被占用时将出现错误。您是否能够想出一个解决方案,或者回答帮助?您是否能够想出一个解决方案,或者回答帮助?