2013-03-07 60 views
0

我想從表單中動態設置我的多盒子的值。我正在使用<display:table />標記在表格中顯示一個列表,然而,我在表格上的每一行都有checbox,我希望valuedisabled屬性根據列表中與該行對應的對象設置在桌子裏。這是我目前正在做的。Struts 1:如何使用表單bean設置<html:multibox />值?

<display:table name="sessionScope.SearchForm.companyDevices" requestURI="my/action.jspa"> 
     <display:column> 
       <html:multibox property="selectedDevices" 
value="${macAddress}" <!-- HERE --> 
disabled="${isAssigned}"/> <!-- AND HERE --> 
     </display:column> 
     <display:column property="macAddress" title="Mac Address" /> 
     <display:column property="vendor" title="Vendor"/> 
     <display:column property="model" title="Model"/> 
     <display:column property="deviceStatus" title="Device Status" /> 

</display:table> 

正如你可以看到一列屬性使用相同macAddress豆值,並將其顯示MACADDRESS有成功的,但是在Multibox並不值由於某種原因設置爲MACADDRESS。 disabled屬性也一樣。

我似乎無法確定哪裏出了問題。如何在display:table中爲多盒設置動態值?

回答

0

我想出了一個辦法。我取代以上

<display:table name="sessionScope.SearchForm.companyDevices" requestURI="my/action.jspa" id="device"> <!-- ID ATTRIBUTE ADDED --> 

<html:multibox property="selectedDevices"><bean:write name="searchForm" property="companyDevices[${row_rowNum - 1}].macAddress" /></html:multibox> 

rowNum是支柱和檢索特定行的行數隱式創建變量MultiBox的標籤。要標識需要分配標識的行。通過將display:table中的id設置爲'device',我使用device_rowNum(從我的id屬性和rowNum的組合中隱式創建的變量)獲取與其在列表中的位置相關聯的特定數字,以便能夠檢索我想要的價值。

相關問題