在jsp中
<%
Messager[] messager=(Messager)ctx.get("messager");for(int i=0;i<messager.length;i++){
%>
<tr>
<td><imag src="...."  onClick="javascript:cmdDelete('+<%=messager[i.getMessagerName()]%>+')"></td>
</tr>
<%}%>function cdmDelete(s){
document.getElementById().value=s;
document.form[0].submit();}一直包错误的参数个数或无效的参数值,是否的我function又错误?

解决方案 »

  1.   

    <imag src="...." onClick="javascript:cmdDelete('<%=messager[i.getMessagerName()]%>')">
    不要写加号
      

  2.   

    imag => img  ..
      

  3.   

    把加号去掉试试。 或者
    onClick="javascript:cmdDelete('"+<%=messager[i.getMessagerName()]%>+"')"
      

  4.   

    imag => img ..
    document.getElementById().value=s;不要这么纠结,这是我发帖的时候打错了
    以上去掉引号和脚上引号都测试不能通过
      

  5.   

    不用加号的,直接‘<%=messager[i.getMessagerName()]%>’
      

  6.   

    document.getElementById().value里面没有传参数
    getElementById("")
      

  7.   


    (Messager)ctx.get("messager");既然是赋值给数组,不是应该强转成数组吗,
    messager[i.getMessagerName()]这应该是messager[i].getMessagerName()
      

  8.   

    少说了点: 应该是 Messager[] messager=(Messager[]) ctx.get("messager");
    然后就是 messager[i.getMessagerName()] ---> messager[i].getMessagerName()
    还有最重要的就是 + 号的问题。