簡體   English   中英

如何獲取顯示標簽的復選框值?

[英]How to get checkbox value of display tag?

我使用裝飾器 class 在顯示表中添加了復選框,如下面的代碼片段所示

public String getStatus()
       {
    DisplayLogTimeForm dltf =(DisplayLogTimeForm)getCurrentRowObject();
    String ret="";

    String status= dltf.getStatus();
    String date= dltf.getSET_DATE();
    //System.out.println("Decorator..." + date);
    if(status.equals("notpresent"))
    {

        System.out.println("Decorator..." + date);
        ret="<input type='checkbox' size='10' id = 'statusp"+i+"' name = 'statusp' property = 'status' value='"+date+"' onclick='changeCounter(this.id);' /><input type='hidden' name='checkedBox' value='"+i+"' />";
        i++;

        System.out.println("id.." + ret);
        System.out.println("id.." + i);
        return ret;
    }
    else
    {
        return null;
    }

我想在 class 中獲取復選框的值。請提出建議

我也遇到過這樣的問題,目前在我的項目中使用。 希望它對你有用。

Approve.jsp
============

<%@ taglib uri="http://displaytag.sf.net" prefix="display"%>
<jsp:scriptlet>
<![CDATA[  
org.displaytag.decorator.CheckboxTableDecorator decorator = new org.displaytag.decorator.CheckboxTableDecorator();
decorator.setId("form_no");  
decorator.setFieldName("_chk");
request.setAttribute("checkboxDecorator", decorator);        
]]>
</jsp:scriptlet>

<script type="text/javascript">
function Fnc_FormAction(action)
{   
document.forms[0].action="<%=request.getContextPath()%>/approve.do?reqCode="+action;
document.forms[0].submit();
}
function checkbox(form,form_no)
{
if(form.checked)
{
form.value= form_no;         
}    
}
</script>
<html:form method="POST" action="/approve.do" styleClass="FORM" styleId="form" style="form">    
<display:table name="result" export="false" class="displaytag"
requestURI="/approve.do?reqCode=approve" id="ReportTable"
uid="ReportTable" cellpadding="0" style="width:1200px"
decorator="checkboxDecorator" excludedParams="updateList">
<display:column title="Check To Approve">
<input name="form_no" type="hidden" value="<%=((Approval)ReportTable).getForm_no() %>" />
<input type="checkbox" name="chk" value="<%=((Approval)ReportTable).getForm_no() %>" onclick="checkbox(this,<%=((Approval)ReportTable).getForm_no() %>)">
</display:column>
<input type="button" name="Approve" id="Approval" value="  Approve  " onclick="Fnc_FormAction('approveByRoles')"/>
</display:table>


ApproveActionForm
==================
private int chk[];
/**
* @return the chk
*/
public int[] getChk() {
return chk;
}
/**
* @param chk the chk to set
*/
public void setChk(int[] chk) {
this.chk = chk;
}



ApproveAction.java
==================

public ActionForward approveByRoles(ActionMapping mapping, ActionForm form,
HttpServletRequest  request,HttpServletResponse response) throws STException 
{
ApproveActionForm aprForm=(ApproveActionForm)form;
if(aprForm.getChk()!=null)
{  
int chks[] = aprForm.getChk();
int updateFormNo = 0;
for(int i=0;i<chks.length;i++)
{   
updateFormNo = chks[i];
System.out.println("Updated Form Number is = "+ updateFormNo);
}   
}
}       

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM