问题描述
请大家帮忙看看。functiont_setpw(gname,btnid,msg){vargv=document.getElementById(gname);varcb=document.getElementsByTagName("input");varj=0;varselectedvalue="";for(vari=0;i<cb.length;i++){if(cb[i].type=="checkbox"&&cb[i].checked==true){j++;selectedvalue+=cb[i].value;}}if(j>0){document.getElementById(btnid).click();}else{ShowMessage(msg);}}在页面中调用这个方法:<inputtype="button"value="推荐"id="btntuijian"onclick="t_setpw('gvDigiBooks','tuijian','请选择一个需要推荐的电子图书');"class="ToolbarBtnIconAdd"runat="server"/>在运行时报'document.getElementById(...)'为空或不是对象。
解决方案
解决方案二:
有id为gvDigiBooks或btnid的组件吗
解决方案三:
你需要runat="server"吗,不需要就去掉,如果需要onclick="xx"就改成onclientclick="xx"
解决方案四:
vargv=document.getElementById("gname");
解决方案五:
vargv=document.getElementById("gname");
解决方案六:
页面中有gvDigiBooks和tuijian这两个对象吗?还是写错了.
解决方案七:
document.getElementById("<%=gname.ClientID%>").value;试试看、因为你的HTM标记加了runat="server"所以可能会根据ID会报这个错误。
解决方案八:
vargv=document.getElementById("<%=gname.ClientID%>").value;
解决方案九:
引用6楼的回复:
document.getElementById("<%=gname.ClientID%>").value;试试看、因为你的HTM标记加了runat="server"所以可能会根据ID会报这个错误。
加了runat="server"id会变,你可以vara=document.getElementById("<%=gname.ClientID%>");看一看a有没有值。
解决方案十:
gvDigiBooks这个是什么?vargv=document.getElementById("gvDigiBooks");?
解决方案十一:
首先,检查一下gvDigiBooks和tuijian这两个控件是否存在,然后你这个js代码是写在页面上还是用户控件里,最好在打开的页面上查看一下源代码,确定控件的名称有没有错误