<%@ page contentType="text/html; charset=GBK" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>设定查询条件</title>
<script language="JavaScript" type="text/JavaScript">
//删除当前光标所在的表格行
function DropRow()
{
if (event.srcElement.parentElement.tagName.toUpperCase() == 'TR')
{
alert(event.srcElement.parentElement.rowIndex);
}
}
//清空当前表格条件行
function CleanRow()
{
var i;
for(;;)
{
if((i=conditiontable.rows.length)>3)
{
conditiontable.deleteRow(i-1)}
else
break;
}
}
//对表格增加一行并产生相应控件和值
function AddRow(selectSql)
{
//var oTbl = parent.frames.LR.document.body.all.tblList;
//var RowCount = oTbl.rows.length;
var NewRow = conditiontable.insertRow(conditiontable.rows.length); var nc1 = NewRow.insertCell();
var nc2 = NewRow.insertCell();
var nc3 = NewRow.insertCell();
var nc4 = NewRow.insertCell();
var nc5 = NewRow.insertCell();
var nc6 = NewRow.insertCell(); var p1,p2,p3,p4,p5,p6,c; //htmlstr="<tr bgcolor="#FFFFCC">";
p1=" <td><font color='#000000'><select name='zkh'><Option value='' selected>无</option><Option value='('>左括号</option></select></td>\n";
p2=" <td><font color='#000000'><select name='tjl' id='tjl'>"+selectSql+"</select></font></td>\n";
p3=" <td><font color='#000000'><select name='tjh' id='tjh'></select></font></td>\n";
p4=" <td><font color='#000000'><input name='tjz' type='text' id='tjz' size=50 value='?'></font></td>\n";
p5=" <td><font color='#000000'><select name='ykh'><option value='' selected>无</option><option value=')'>右括号</option></select></font></td>\n";
p6=" <td><font color='#000000'><select name='ljh'><option value='' selected>无</option><option value='and'>and</option><option value='or'>or</option></select></font></td>\n";
//htmlstr+="</tr>"; nc1.innerHTML = p1;
nc2.innerHTML = p2;
nc3.innerHTML = p3;
nc4.innerHTML = p4;
nc5.innerHTML = p5;
nc6.innerHTML = p6; nc1.width = "11%";
nc2.width = "19%";
nc3.width = "10%";
nc4.width = "38%";
nc5.width = "11%";
nc6.width = "11%"; c="#FFFFCC";
NewRow.bgColor = c;
NewRow.noWrap = true;
NewRow.style.wordBreak = "break-all";
NewRow.height = 30;
NewRow.align = "left";
//nc8.align = "right";
//conditiontable.style.tableLayout = "fixed";
}
</script>
</head><body>
<label></label>
<form action="" method="post" enctype="multipart/form-data" name="condition" id="condition">
<p> </p>
<p>定制报表<font color="#000000">向导</font>>>设定查询条件 </p>
<div id="Layer2" style="position:absolute; width:731px; height:15px; z-index:2; left: 10px; top: 65px;">
<hr align="left" color="#99333">
</div> <table width="99%" border="1" cellpadding="3" cellspacing="0" id="conditiontable">
<tr bgcolor="#006699">
<td height="30" colspan="7"><font color="#CCCCCC" size="2">请设置报表查询条件,"?"代表绑定参数替代符</font></td>
</tr>
<%--<tr bgcolor="#FFFFCC"onmouseover="alert('这是' + (this.rowIndex + 1) + '行');">--%>
<tr bgcolor="#FFFFCC">
<td width="11%"><font color="#990033" size="2">括号</font></td>
<td width="15%"><font color="#990033" size="2">条件列</font></td>
<td width="9%"><font color="#990033" size="2">条件符</font></td>
<td width="40%"><font color="#990033" size="2">条件值</font></td>
<td width="11%"><font color="#990033" size="2">括号</font></td>
<td width="7%"><font color="#990033" size="2">逻辑符</font></td>
<td width="7%"><font color="#990033" size="2">删除</font></td>
</tr>
<tr bgcolor="#FFFFCC">
<td width="11%" height="20"> <select name="zkh" id="zkh">
<option value="" selected>无</option>
<option value="(">左括号</option>
</select> </td>
<%--<%!String selectSql="";%>声明条件列语句构造变量--%>
<td width="15%" height="20"><font color="#000000">
<select name="tjl" id="tjl">
<jsp:useBean id="conn" scope="page" class="tl_proj.InConn"/>
<jsp:useBean id="Fun" scope="page" class="tl_proj.Function" />
<%
String sql="";
String selectSql="";
ResultSet result=null;
sql="select i_workerid,i_workername from web_m_worker";
result=conn.executeQuery(sql);
while(result.next())
{%>
<option value=<%=result.getString(1)%>><%=Fun.getStr(result.getString(2))%></option>
<%selectSql+="<option value="+result.getString(1)+">"+Fun.getStr(result.getString(2))+"</option>";%>
<%}
%>
<%conn.closeDb();%>
</select>
</font></td>
<td width="9%" height="20"><font color="#000000">
<select name="tjh" id="tjh">
</select>
</font></td>
<td width="40%" height="20"><font color="#000000">
<input name="tjz" type="text" id="tjz" value="?" size="40" >
</font></td>
<td width="11%" height="20"><font color="#000000">
<select name="ykh" id="ykh">
<option value="" selected>无</option>
<option value=")">右括号</option>
</select>
</font></td>
<td width="7%" height="20"><font color="#000000">
<select name="ljh" id="ljh">
<option value="" selected>无</option>
<option value="and">and</option>
<option value="or">or</option>
</select>
</font></td>
<script language="JavaScript" type="text/JavaScript">
var row=0;
row=conditiontable.rows.length;
</script>
<td width="7%"><input id="flag" name="flag" type="checkbox" value=row onclick="alert(this.value);"></td>
</tr>
</table>
<p>
<script language="JavaScript" type="text/JavaScript">
var dd="";
dd="<%=selectSql%>";
</script>
<input type="button" name="add" value="增加条件" onclick=JavaScript:AddRow(dd);>
<input type="button" name="forward" value="上一步">
<input type="button" name="next" value="下一步">
<input type="button" name="delete" value="删除条件" onclick="alert(event.srcElement.parentElement.rowIndex);">
<input type="button" name="clean" value="清空条件" onclick=JavaScript:CleanRow();>
</p>
<p> </p>
<p> </p>
</form>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>设定查询条件</title>
<script language="JavaScript" type="text/JavaScript">
//删除当前光标所在的表格行
function DropRow()
{
if (event.srcElement.parentElement.tagName.toUpperCase() == 'TR')
{
alert(event.srcElement.parentElement.rowIndex);
}
}
//清空当前表格条件行
function CleanRow()
{
var i;
for(;;)
{
if((i=conditiontable.rows.length)>3)
{
conditiontable.deleteRow(i-1)}
else
break;
}
}
//对表格增加一行并产生相应控件和值
function AddRow(selectSql)
{
//var oTbl = parent.frames.LR.document.body.all.tblList;
//var RowCount = oTbl.rows.length;
var NewRow = conditiontable.insertRow(conditiontable.rows.length); var nc1 = NewRow.insertCell();
var nc2 = NewRow.insertCell();
var nc3 = NewRow.insertCell();
var nc4 = NewRow.insertCell();
var nc5 = NewRow.insertCell();
var nc6 = NewRow.insertCell(); var p1,p2,p3,p4,p5,p6,c; //htmlstr="<tr bgcolor="#FFFFCC">";
p1=" <td><font color='#000000'><select name='zkh'><Option value='' selected>无</option><Option value='('>左括号</option></select></td>\n";
p2=" <td><font color='#000000'><select name='tjl' id='tjl'>"+selectSql+"</select></font></td>\n";
p3=" <td><font color='#000000'><select name='tjh' id='tjh'></select></font></td>\n";
p4=" <td><font color='#000000'><input name='tjz' type='text' id='tjz' size=50 value='?'></font></td>\n";
p5=" <td><font color='#000000'><select name='ykh'><option value='' selected>无</option><option value=')'>右括号</option></select></font></td>\n";
p6=" <td><font color='#000000'><select name='ljh'><option value='' selected>无</option><option value='and'>and</option><option value='or'>or</option></select></font></td>\n";
//htmlstr+="</tr>"; nc1.innerHTML = p1;
nc2.innerHTML = p2;
nc3.innerHTML = p3;
nc4.innerHTML = p4;
nc5.innerHTML = p5;
nc6.innerHTML = p6; nc1.width = "11%";
nc2.width = "19%";
nc3.width = "10%";
nc4.width = "38%";
nc5.width = "11%";
nc6.width = "11%"; c="#FFFFCC";
NewRow.bgColor = c;
NewRow.noWrap = true;
NewRow.style.wordBreak = "break-all";
NewRow.height = 30;
NewRow.align = "left";
//nc8.align = "right";
//conditiontable.style.tableLayout = "fixed";
}
</script>
</head><body>
<label></label>
<form action="" method="post" enctype="multipart/form-data" name="condition" id="condition">
<p> </p>
<p>定制报表<font color="#000000">向导</font>>>设定查询条件 </p>
<div id="Layer2" style="position:absolute; width:731px; height:15px; z-index:2; left: 10px; top: 65px;">
<hr align="left" color="#99333">
</div> <table width="99%" border="1" cellpadding="3" cellspacing="0" id="conditiontable">
<tr bgcolor="#006699">
<td height="30" colspan="7"><font color="#CCCCCC" size="2">请设置报表查询条件,"?"代表绑定参数替代符</font></td>
</tr>
<%--<tr bgcolor="#FFFFCC"onmouseover="alert('这是' + (this.rowIndex + 1) + '行');">--%>
<tr bgcolor="#FFFFCC">
<td width="11%"><font color="#990033" size="2">括号</font></td>
<td width="15%"><font color="#990033" size="2">条件列</font></td>
<td width="9%"><font color="#990033" size="2">条件符</font></td>
<td width="40%"><font color="#990033" size="2">条件值</font></td>
<td width="11%"><font color="#990033" size="2">括号</font></td>
<td width="7%"><font color="#990033" size="2">逻辑符</font></td>
<td width="7%"><font color="#990033" size="2">删除</font></td>
</tr>
<tr bgcolor="#FFFFCC">
<td width="11%" height="20"> <select name="zkh" id="zkh">
<option value="" selected>无</option>
<option value="(">左括号</option>
</select> </td>
<%--<%!String selectSql="";%>声明条件列语句构造变量--%>
<td width="15%" height="20"><font color="#000000">
<select name="tjl" id="tjl">
<jsp:useBean id="conn" scope="page" class="tl_proj.InConn"/>
<jsp:useBean id="Fun" scope="page" class="tl_proj.Function" />
<%
String sql="";
String selectSql="";
ResultSet result=null;
sql="select i_workerid,i_workername from web_m_worker";
result=conn.executeQuery(sql);
while(result.next())
{%>
<option value=<%=result.getString(1)%>><%=Fun.getStr(result.getString(2))%></option>
<%selectSql+="<option value="+result.getString(1)+">"+Fun.getStr(result.getString(2))+"</option>";%>
<%}
%>
<%conn.closeDb();%>
</select>
</font></td>
<td width="9%" height="20"><font color="#000000">
<select name="tjh" id="tjh">
</select>
</font></td>
<td width="40%" height="20"><font color="#000000">
<input name="tjz" type="text" id="tjz" value="?" size="40" >
</font></td>
<td width="11%" height="20"><font color="#000000">
<select name="ykh" id="ykh">
<option value="" selected>无</option>
<option value=")">右括号</option>
</select>
</font></td>
<td width="7%" height="20"><font color="#000000">
<select name="ljh" id="ljh">
<option value="" selected>无</option>
<option value="and">and</option>
<option value="or">or</option>
</select>
</font></td>
<script language="JavaScript" type="text/JavaScript">
var row=0;
row=conditiontable.rows.length;
</script>
<td width="7%"><input id="flag" name="flag" type="checkbox" value=row onclick="alert(this.value);"></td>
</tr>
</table>
<p>
<script language="JavaScript" type="text/JavaScript">
var dd="";
dd="<%=selectSql%>";
</script>
<input type="button" name="add" value="增加条件" onclick=JavaScript:AddRow(dd);>
<input type="button" name="forward" value="上一步">
<input type="button" name="next" value="下一步">
<input type="button" name="delete" value="删除条件" onclick="alert(event.srcElement.parentElement.rowIndex);">
<input type="button" name="clean" value="清空条件" onclick=JavaScript:CleanRow();>
</p>
<p> </p>
<p> </p>
</form>
</body>
</html>
你直接去点删除按钮,当前的光标在不在table上,肯定是得不到啦
<%@ page contentType="text/html; charset=GBK" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>设定查询条件</title>
<script language="JavaScript" type="text/JavaScript">
//删除当前光标所在的表格行
var rownum = "";
function del()
{
if(rownum == "")
{
alert("请先点击你要删除的行数!");
return;
}
if(rownum > 2)
confirm("你真的要删除第 "+eval("rownum-1")+" 的数据?");
else
alert("这一行是不能删的噢:)");
}function DropRow()
{
if (event.srcElement.parentElement.tagName.toUpperCase() == 'TR')
{
rownum = event.srcElement.parentElement.rowIndex;
}
}
//清空当前表格条件行
function CleanRow()
{
var i;
for(;;)
{
if((i=conditiontable.rows.length)>3)
{
conditiontable.deleteRow(i-1)}
else
break;
}
}
//对表格增加一行并产生相应控件和值
function AddRow(selectSql)
{
//var oTbl = parent.frames.LR.document.body.all.tblList;
//var RowCount = oTbl.rows.length;
var NewRow = conditiontable.insertRow(conditiontable.rows.length); var nc1 = NewRow.insertCell();
var nc2 = NewRow.insertCell();
var nc3 = NewRow.insertCell();
var nc4 = NewRow.insertCell();
var nc5 = NewRow.insertCell();
var nc6 = NewRow.insertCell(); var p1,p2,p3,p4,p5,p6,c; //htmlstr="<tr bgcolor="#FFFFCC">";
p1=" <td><font color='#000000'><select name='zkh'><Option value='' selected>无</option><Option value='('>左括号</option></select></td>\n";
p2=" <td><font color='#000000'><select name='tjl' id='tjl'>"+selectSql+"</select></font></td>\n";
p3=" <td><font color='#000000'><select name='tjh' id='tjh'></select></font></td>\n";
p4=" <td><font color='#000000'><input name='tjz' type='text' id='tjz' size=50 value='?'></font></td>\n";
p5=" <td><font color='#000000'><select name='ykh'><option value='' selected>无</option><option value=')'>右括号</option></select></font></td>\n";
p6=" <td><font color='#000000'><select name='ljh'><option value='' selected>无</option><option value='and'>and</option><option value='or'>or</option></select></font></td>\n";
//htmlstr+="</tr>"; nc1.innerHTML = p1;
nc2.innerHTML = p2;
nc3.innerHTML = p3;
nc4.innerHTML = p4;
nc5.innerHTML = p5;
nc6.innerHTML = p6; nc1.width = "11%";
nc2.width = "19%";
nc3.width = "10%";
nc4.width = "38%";
nc5.width = "11%";
nc6.width = "11%"; c="#FFFFCC";
NewRow.bgColor = c;
NewRow.noWrap = true;
NewRow.style.wordBreak = "break-all";
NewRow.height = 30;
NewRow.align = "left";
//nc8.align = "right";
//conditiontable.style.tableLayout = "fixed";
}
</script>
</head><body>
<label></label>
<form action="" method="post" enctype="multipart/form-data" name="condition" id="condition">
<p> </p>
<p>定制报表<font color="#000000">向导</font>>>设定查询条件 </p>
<div id="Layer2" style="position:absolute; width:731px; height:15px; z-index:2; left: 10px; top: 65px;">
<hr align="left" color="#99333">
</div> <table width="99%" border="1" cellpadding="3" cellspacing="0" id="conditiontable" onclick="DropRow()">
<tr bgcolor="#006699">
<td height="30" colspan="7"><font color="#CCCCCC" size="2">请设置报表查询条件,"?"代表绑定参数替代符</font></td>
</tr>
<%--<tr bgcolor="#FFFFCC"onmouseover="alert('这是' + (this.rowIndex + 1) + '行');">--%>
<tr bgcolor="#FFFFCC">
<td width="11%"><font color="#990033" size="2">括号</font></td>
<td width="15%"><font color="#990033" size="2">条件列</font></td>
<td width="9%"><font color="#990033" size="2">条件符</font></td>
<td width="40%"><font color="#990033" size="2">条件值</font></td>
<td width="11%"><font color="#990033" size="2">括号</font></td>
<td width="7%"><font color="#990033" size="2">逻辑符</font></td>
<td width="7%"><font color="#990033" size="2">删除</font></td>
</tr>
<tr bgcolor="#FFFFCC">
<td width="11%" height="20"> <select name="zkh" id="zkh">
<option value="" selected>无</option>
<option value="(">左括号</option>
</select> </td>
<%--<%!String selectSql="";%>声明条件列语句构造变量--%>
<td width="15%" height="20"><font color="#000000">
<select name="tjl" id="tjl">
<jsp:useBean id="conn" scope="page" class="tl_proj.InConn"/>
<jsp:useBean id="Fun" scope="page" class="tl_proj.Function" />
<%
String sql="";
String selectSql="";
ResultSet result=null;
sql="select i_workerid,i_workername from web_m_worker";
result=conn.executeQuery(sql);
while(result.next())
{%>
<option value=<%=result.getString(1)%>><%=Fun.getStr(result.getString(2))%></option>
<%selectSql+="<option value="+result.getString(1)+">"+Fun.getStr(result.getString(2))+"</option>";%>
<%}
%>
<%conn.closeDb();%>
</select>
</font></td>
<td width="9%" height="20"><font color="#000000">
<select name="tjh" id="tjh">
</select>
</font></td>
<td width="40%" height="20"><font color="#000000">
<input name="tjz" type="text" id="tjz" value="?" size="40" >
</font></td>
<td width="11%" height="20"><font color="#000000">
<select name="ykh" id="ykh">
<option value="" selected>无</option>
<option value=")">右括号</option>
</select>
</font></td>
<td width="7%" height="20"><font color="#000000">
<select name="ljh" id="ljh">
<option value="" selected>无</option>
<option value="and">and</option>
<option value="or">or</option>
</select>
</font></td>
<script language="JavaScript" type="text/JavaScript">
var row=0;
row=conditiontable.rows.length;
</script>
<td width="7%"><input id="flag" name="flag" type="checkbox" value=row onclick="alert(this.value);"></td>
</tr>
</table>
<p>
<script language="JavaScript" type="text/JavaScript">
var dd="";
dd="<%=selectSql%>";
</script>
<input type="button" name="add" value="增加条件" onclick=JavaScript:AddRow(dd);>
<input type="button" name="forward" value="上一步">
<input type="button" name="next" value="下一步">
<input type="button" name="delete" value="删除条件" onclick="del()">
<input type="button" name="clean" value="清空条件" onclick=JavaScript:CleanRow();>
</p>
<p> </p>
<p> </p>
</form>
</body>
</html>
你的click事件明显就不是发生在表格行内的某个元素
而是发生在"删除条件"这个按钮上,
onclick="alert(event.srcElement.parentElement.tagName);"把上面的替换成这个,
你将会看到"P"提示,因为此时事件并不是发生在你要删除的行上,而是发生在你准备进行行删除动作的操作对象上
onclick="alert(event.srcElement.parentElement.parentElement.tagName);"这个如果放到
checkbox上,那么你将看到提示"TR"