在jsp的javascript函数中没有调用struts1动作



我使用display标记将我的列表显示在一个表上。我试图有一个按钮来删除基于行id的行。id被传递给我的javascript函数,但动作没有被调用。我知道这个值被传递了,因为当我测试使用alert在函数中输出id时,它被传递了。

我运行firebug,它说我的表单是undefined

我现在得到的是

display tag table:

<form action="" method="POST" id="mainForm" name="MyFormBean">
<display:table requestURIcontext="true" requestURI="/unavailability/loadUnavailability.action?method=loadForm" uid="myList" name="requestScope.unavailList" class="simple" pagesize="10" defaultsort="2" sort="list" cellspacing="0" excludedParams="*">    
<display:column  property="startDate" title="Start Date" width="18%" decorator="com.mhngs.util.DisplayTagDateWrapper" sortable="true" headerClass="sortable"/>
<display:column  property="endDate" title="End Date" width="18%" decorator="com.mhngs.util.DisplayTagDateWrapper" sortable="true" headerClass="sortable" />
<display:column  property="reason" title="Comments" width="30%" sortable="true" headerClass="sortable" />   
<display:column media="html" width="10%">
<a href="#" onClick="javascript:deleteEntry('<c:out value="${myList.rowId}"/>')">Delete</a>
</display:column>

</display:table> 
<input type="hidden" name="rowId" id="rowId" />
</form>
Javascript:

    function deleteEntry(rowId){
        document.getElementById('rowId').value=rowId;
        document.forms[0].action='/app/protected/mflc/unavailability/delCounselorEntry.action?method=deleteCounselorUnavailability';
        document.forms['myForm'].submit; //Correction       
    }

Struts Form Bean:

<form-bean name="MyFormBean" type="org.apache.struts.action.DynaActionForm">
<form-property name="myList" type="java.util.List"/>
</form-bean>

Struts删除映射:

<action path="/unavailability/delCounselorEntry"
        type="com.action.MyAction" 
        scope="request"
        parameter="method" 
        name="MyFormBean">
        <forward name="Success"
            path="/unavailability/myDeleteComfirmationPage.actioncontent" />
    </action>

任何帮助都将非常感激,谢谢

我找到了表单未定义的原因

我一开始有这个指向第一种形式:

document.forms[0];              //First <form> element

但是如果你的表单有一个名字,你需要像这样指向你的表单:

document.forms['myForm']; //Points to <form name="name_of_form">

最新更新