问题描述
1我页面有两个form是往后台提交的action请求路径,一个是还原,一个是作废,很奇怪的是这个form哪一个放在前面的,哪一个才有效,我特意换了一下位置,真不知道该怎么弄了,大神们,帮帮忙!如果请求第二个form表单就会报HTTPStatus404-Noresultdefinedforaction<formid="delBatchForm"action="${pageContext.request.contextPath}/staff_delBatch"method="post"><divregion="center"border="false"><tableid="grid"></table></div></form><formid="restoreBatchForm"action="${pageContext.request.contextPath}/staff_restoreBatch"method="post"><divregion="center"border="false"><tableid="grid"></table></div></form>
//还原取派员functiondoRestore(){vararray=$("#grid").datagrid("getSelections");if(array.length==0){$.messager.alert('温馨提示','请先选择要还原的派件员','warning');return;}else{$.messager.confirm('确认','您确认想要还原派件员吗?',function(r){if(r){$("#restoreBatchForm").submit();}});}}
//作废functiondoDelete(){//判断用户是否选中vararray=$("#grid").datagrid("getSelections");if(array.length==0){$.messager.alert('温馨提示','请先选择要作废的派件员','warning');return;}else{$.messager.confirm('确认','您确认想要删除派件员吗?',function(r){if(r){$("#delBatchForm").submit();}});}}//作废取派员publicStringdelBatch(){//前如如果提交的多个id,以","豆号空格的方式拼接一起,保存在modelk中String[]ids=staff.getId().split(",");service.delBatch(ids);return"delBatchOK";}//还原取派员publicStringrestoreBatch(){String[]ids=staff.getId().split(",");service.restoreBatch(ids);return"restoreBatchOK";}
<actionname="staff_*"class="staffAction"method="{1}"><resultname="saveOK">/WEB-INF/pages/base/staff.jsp</result><resultname="pageQueryOK"type="json"><paramname="root">pagination</param></result><resultname="delBatchOK">/WEB-INF/pages/base/staff.jsp</result><resultname="ajaxListOK"type="json"></result><resultname="restoreBatchOK">/WEB-INF/pages/base/staff.jsp</result></action>
解决方案
解决方案二:
两个table的id不能相同
解决方案三:
就这点代码来看$("#grid")这句话很明显用错了,id选择器是唯一选择器,调用的是document.getElementById(),注意是这个js方法名字是element不是elements,只会返回一条记录,如果有多个id重名也只会返回第一条。
解决方案四:
你的id重名啦
解决方案五:
你的id重名啦
解决方案六:
id重名了把,修改下再试试
解决方案七:
varrow=$("#grid).datagrid("getSelected");这一句,里面的gridid不是选择<table>里的,而整个grid样式,是否被选中,改过了,之前那个table里的,改过了,没有用