日期:2014-05-18  浏览次数:20589 次

jsp中用循环写控件时,怎么对控件进行操作?
循环写一个input控件,默认value是“今天”,例如循环7次,每一个循环里,都会进行判断,满足条件就执行一个js,把控件的值改变,
我这么写出现了一个问题,只有第一行控件可以改变值,其他控件虽然满足了条件,但是还是原来的值

<%for(int i=1;i<8;i++){%>
<TR bgColor="white">
<td> 
<input name=sor value="今天">

<script language="javascript">
<%if(a==b){%>  
document.form.sor.value="昨天";
<%}%> 
</script> 

</td>
<%}%>

------解决方案--------------------
<%for(int i = 1; i < 8; i++) {%>
<tr bgcolor="white">
<td>
<%if(a == b) {%>
<input name="sor" value="昨天">
<%}else {%>
<input name="sor" value="今天">
<%}%>
</td>
</tr>
<%}%>
------解决方案--------------------
HTML code

<%for(int i=1;i <8;i++){% > 
<TR bgColor="white" > 
<td >  
<input name=sor<%=i%> value="今天" > 

<script language="javascript" > 
<%if(a==b){% >          
document.form.sor<%=i%>.value="昨天"; 
<%}% >  
</script >  

</td > 
<%}% >

------解决方案--------------------
关键是要指定input的id号,id号不能重复,如果有了两个同样的id号,doucment.form.sor.value就不能定位了。