2013-03-13 106 views
0

我需要隐藏最后一列,这是复选框基于从弹簧控制器传递的模型对象。如果模型值是“isAll”列应该隐藏,如果任何其他值应该是可见的我已经尝试,但迄今为止失败。林不知道我是否正确地从控制器传递值。帮帮我!隐藏并显示表列

控制器:

System.err.println("Type is: " + formbean.getType()); 
System.err.println("IscCode is: " + formbean.getForecastIsc()); 
System.err.println("ActualIscCode is: " + formbean.getActualIsc()); 
System.err.println("labelNbr is: " + formbean.getLabelNbr()); 
System.err.println("senderOp is: " + formbean.getSenderOp());  
System.err.println("senderLastName is: " + formbean.getSenderLastName()); 
System.err.println("receiverOp is: " + formbean.getReceiverOp()); 
System.err.println("receiverLastName is: " + formbean.getReceiverLastName()); 


    summary = summarySelectDao.getSummary(formbean);  
    if(summary == null || summary.size() == 0){   
     errorMessage = "No Parcel Analysis Cases Found!"; 
return new ModelAndView("redirect:/analysis/analysisSelection? hasError=true"); 
    }else{ 
    logger.info("Total " + summary.size() + " analysis cases found from DB."); 
     model.addObject("summary", summary); 
     model.addObject("isAll", true); //BASED on this model if true 
    } 

    return model;  

JSP:

<td class="ct"<c:out value="${summary.country}" /></td> 
<td class="sc" <c:out value="${summary.source}" /></td> 
<td class="cb" <input type="checkbox" value=""> </td> 

JS:

$(document).ready(function() { 
$(".cb").hide();  
}); 

HTML:

<div id=table1> 
<table id="summaryTable" class="sortable"> 
    <thead> 
     <tr> 
      <th>&nbsp;</th> 
      <th>Bar Code</th> 
      <th>Origin</th> 
      <th>Sender Name</th> 
      <th>Recipient Name</th> 
      <th>USPS Mail<br>Receipt Date</th> 
      <th><br>Load Date</th> 
      <th>Fore-<br>cast<br> ISC</th> 
      <th>Act-<br>ual<br> ISC</th> 
      <th>Country</th> 
      <th>Source</th> 
<th class="cb"><input type="button" id="btnSelectAllCbl" name="selectCheckBox" 
      value="Update"> </th> 
     </tr> 
    </thead> 
    <tbody> 
     <tr> 

       <tr> 
<td bgcolor='yellow'>P 
    </td> 
    <td bgcolor='yellow'><a href="AnalysisController?value=xxxxx">xxxxx 
    </a> 
    </td> 
    <td bgcolor='yellow'>55025 
        </td> 
    <td bgcolor='yellow'>xxxx 
        </td> 
    <td bgcolor='yellow'>SON 
    </td> 
<td bgcolor='yellow'> 
     </td> 
<td bgcolor='yellow'>2013/02/11 060205 
</td> 
<td bgcolor='yellow'>ORD 
        </td> 
<td bgcolor='yellow'>ORD 
        </td> 
        <td bgcolor='yellow'>SINGAPORE 
        </td> 
        <td bgcolor='yellow'>RECIPIENT 
        </td> 
        <td class="cb" bgcolor='yellow'><input 
         type="checkbox" value=""> 
        </td> 
+0

你根本没有显示HTML,或只是没有隐藏最后一列?如果您尝试在单元格中显示值,我认为JSP中的HTML无效。您需要在 2013-03-13 21:12:35

+1

它应该在​​正确关闭时工作,请点击此处查看:http://jsfiddle.net/D2LR3/ – gnysek 2013-03-13 21:15:39

+0

对不起,可能会让我困惑一下。隐藏功能工作正常,但我需要的是,它只隐藏列时,从控制器传递的值是“isAll”,否则它应该显示该列,现在它隐藏列,即使“isAll”为假 – Fahad 2013-03-13 21:33:24

回答

1

最简单的方法:用<c:if>为了打印/不打印列在所有:

<c:if test="${isAll}"> 
    <td class="cb"><input type="checkbox" value=""></td> 
</c:if> 

执行相同的列标题为好。

+0

谢谢!@Luiggi Mendoza所以通过使用我仍然需要使用jquery?如果是,你可以详细说明我将如何编码该部分.. – Fahad 2013-03-14 14:36:54

+0

不,请删除jquery部分。 – 2013-03-14 14:37:15

+0

K.谢谢我会尝试! – Fahad 2013-03-14 14:41:45