
function openReviseWin()...{
var selValue=Select_check("checkbox1");

if(selValue==0)...{
alert("请选择一条记录");
return;
}
if(selValue.length>1)...
{
alert("只能选择一条记录进行修改,请重新选择!!");
return;
}
var checkStr =selValue[0];//用url传递参数的时候无法传递数组参数,所以将数组中需要传递的字符提取出来。 
window.open("/financeProj/admin/reviseIncomeType.jsp?checkbox1=" checkStr,"修改收入类型","height=400,width=300,toolbar=no,location=no,status=no");
}
//将被选中的checkbox的值赋给新数组

function Select_check(objname)...{
var obj = document.getElementsByName(objname);
var selArray = new Array();
var
selStr="";
for(var i = 0;i<obj.length;i )...{ 
if(obj[i].checked)...{
selStr =(obj[i].value ",");
}
}
selArray = selStr.substring(0,selStr.length-1).split(",");//因为添加分隔符","的语句会导致字符串中最后多一个分隔符,所以用selStr.length-1)去掉。保证数组的正确,如果不去掉,则checkbox只选择一个的时候转换成数组元素也会有两个(一个为选中的值,另一个为被分隔符分开后的空值)
return selArray;
}
方法二

function openReviseWin()...{ 
var checkArr=document.getElementsByName("checkbox1");
var checkVar="";
var n=""; 
if(checkArr.length>0)...{ 
for(var i=0;i<checkArr.length;i )...{
if(checkArr[i].checked)...{
checkVar =(checkArr[i].value ",");
n ;
if(n>1)...{
alert("只能选择一条记录进行修改");
return;
}
}
}
}

if(checkVar.length<1)...{
alert("至少选择一项");
return;
}
var cArr = new Array();
var checkStr="";
cArr = checkVar.split(",");
checkStr = cArr[0];
window.open("/financeProj/admin/reviseIncomeType.jsp?checkbox1=" checkStr,"修改收入类型","height=400,width=300,toolbar=no,location=no,status=no");
}

jsp页面中效验所遇到的问题:
1.错误代码
function openReviseWin(){
var selValue=Select_check(checkbox1);//此处错误,因为在函数中的参数虽然是无类型的,但是函数中将该参数传递给了document.getElementsByName("");该方法中的参数应该为控件属性名称的字符串类型。因此这种情况无法得到selValue,修改为var selValue=Select_check("checkbox1")即可。
| 操作选项: 加精 解精 奖惩 设专题 设公告 解公告 固顶 总固顶 解固顶 结帖 解结帖 锁帖 解锁 移帖 删帖 |
所在位置:
看看评论