<s:iterator value="%{list}" status="admin" id="listss">
<s:form action="upTypeCardType.action" name="updateform%{#listss[0]}" onsubmit="return check_submit('form1')">
<s:hidden name="cardID" value=""></s:hidden>
<tr>
<td height="25" align="center">
<s:textfield name="cardName" id="cardname" value="%{#listss[1]}" onblur="checkcardname('updateform%{#listss[0]')"></s:textfield>
<div id="cardname_div%{#listss[0]}" style="position: absolute;padding-top:8px;" mce_style="position: absolute;padding-top:8px;"></div>
</td>
<td align="center">
<input type="button" value="修改" onclick="upcheck('%{#listss[0]}','%{#listss[1]}')">
</td>
<td align="center">
<input type="button" value="删除" onclick="deletetype('<s:property value="%{#listss[0]}"/>')">
</td>
</tr>
</s:form>
</s:iterator>
上面的循环中,form的名字能取到updateform1,updateform2.。。updateformn,onblur中传递的参数为什么一直是updateform%{#listss[0]。如果我想象取表单值一样获取updateform+%{#listss[0]的值,应该怎么写呢。还有,在struts2中,到底能不能用el表达式
<s:form action="upTypeCardType.action" name="updateform%{#listss[0]}" onsubmit="return check_submit('form1')">
<s:hidden name="cardID" value=""></s:hidden>
<tr>
<td height="25" align="center">
<s:textfield name="cardName" id="cardname" value="%{#listss[1]}" onblur="checkcardname('updateform%{#listss[0]')"></s:textfield>
<div id="cardname_div%{#listss[0]}" style="position: absolute;padding-top:8px;" mce_style="position: absolute;padding-top:8px;"></div>
</td>
<td align="center">
<input type="button" value="修改" onclick="upcheck('%{#listss[0]}','%{#listss[1]}')">
</td>
<td align="center">
<input type="button" value="删除" onclick="deletetype('<s:property value="%{#listss[0]}"/>')">
</td>
</tr>
</s:form>
</s:iterator>
上面的循环中,form的名字能取到updateform1,updateform2.。。updateformn,onblur中传递的参数为什么一直是updateform%{#listss[0]。如果我想象取表单值一样获取updateform+%{#listss[0]的值,应该怎么写呢。还有,在struts2中,到底能不能用el表达式
改为:<s:iterator value="list" status="admin" id="listss"> 看看
alert("formname:"+formname);
}这里弹出的值还是updateform%{#listss[0]。
<script language="JavaScript">
var forlook;
function checkcardname(formname){
var forlook="cardname_div"+formname;
var cardname = eval("document.all."+formname).cardName.value;
if(cardname!=""){
loadXMLDoc("checknameCardType.action?cardName="+cardname,checkReturn);
return checkReturn(formname);
}else{
if(cardname==""||cardname.length<1){
if(formname=="form2"){
document.getElementById("cardname_div2").innerHTML="<font color=red>请输入名字!</font>";
}else{
document.getElementById(forlook).innerHTML="<font color=red>请输入名字!</font>";
}
return false;
}
}
}
function checkReturn(formname){
var forlook="cardname_div"+formname;
if(req.readyState==4){
if(req.status==200){
/*Ajax请求完成*/
var result = req.responseText;
if(result==0){
if(formname=="form2"){
document.getElementById("cardname_div2").innerHTML="<font color='red'>该名字已使用</font>";
}else{
document.getElementById(forlook).innerHTML="<font color='red'>该名字已使用</font>";
}
if(formname=="form2"){
document.form2.cardName.focus();
}else{
return false;
}
return false;
}else{
if(formname=="form2"){
document.getElementById("cardname_div2").innerHTML="<font color=red>名字可用</font>";
}else{
document.getElementById(forlook).innerHTML="<font color='red'>该名字可用</font>";
}
return true;
}
}
}
}
//验证表单提交
function check_submit(formname){
if(checkcardname(formname)){
return true;
}else{
return false;
}
}
function changeaction(formname){
if(checkcardname(formname)){
eval("document.all."+formname).action="addTypeCardType.action";
eval("document.all."+formname).submit();
}else{
return false;
}
}
//修改时验证
function upcheck(formname){
if(checkcardname(formname)){
eval("document.all."+formname).action="upTypeCardType.action";
eval("document.all."+formname).submit();
}else{
return false;
}
}
function deletetype(delid,formname){
if(!confirm("与该卡类相关的信息也将被伤处,您确定要删除吗?")){
return false;}else{
eval("document.all."+formname).cardID.value=delid;
eval("document.all."+formname).action="delTypeCardType.action";
eval("document.all."+formname).submit();
}
}
</script>
<s:iterator value="list" status="admin" id="listss">
<s:form action="upTypeCardType.action" name="updateform%{#listss[0]}" onsubmit="return check_submit('form1')">
<s:hidden name="cardID" value="%{#listss[0]}"></s:hidden>
<tr>
<td height="25" align="center">
<s:textfield name="cardName" id="cardname" value="%{#listss[1]}" onblur="checkcardname('updateform%{#listss[0]}')"></s:textfield>
<div id="cardname_divupdateform<s:property value="%{#listss[0]}"/>" style="position: absolute;padding-top:8px;" mce_style="position: absolute;padding-top:8px;"></div>
</td>
<td align="center">
<input type="button" value="修改" onclick="upcheck('updateform<s:property value="%{#listss[0]}"/>')">
</td>
<td align="center">
<input type="button" value="删除" onclick="deletetype('<s:property value="%{#listss[0]}"/>','updateform<s:property value="%{#listss[0]}"/>')">
</td>
</tr>
</s:form>
</s:iterator>
</table>
<s:form name="form2">
<table width="800" border="1" cellpadding="1" cellspacing="0" class="tr1">
<tr>
<td height="25" align="center">
卡类名:<input type="text" name="cardName" onblur="checkcardname('form2')">
<div id="cardname_div2" style="position: absolute;padding-top:8px;" mce_style="position: absolute;padding-top:8px;"></div>
</td>
</tr>
<tr class="tablelist">
<th height="20" align="center" width="38%">
<input type="button" value="增加" onclick="changeaction('form2')">
</th>
</tr>
</table>
</s:form>