-1

JSF 1.2 データテーブル

次のコードを書いてデータテーブルから行を削除する方法を知っています。

jsp

<h:graphicImage id="deleteRowBtn_img" url="../../images/table_icon_delete.gif" style="cursor:pointer" alt="Delete Row">
    <a4j:support id="deleteRowBtn" event="onclick"  actionListener="#{mnpAction.deleteMultiNoPortRow}" reRender="multiNoPortTable" oncomplete="resetViewConfigs();"/>
</h:graphicImage>

アクションビーン

public void deleteMultiNoPortRow(ActionEvent ae) {
    {
        int index = abcBean.getDataTable().getRowIndex();
        mnpBean.getMultiNoPortingList().remove(index);
    }
}

しかし、データテーブルから行を削除する他の方法があることを知りたいですJSF1.2。これに関する助けがあれば感謝します!!!!!!

4

1 に答える 1

0

a4j:commandButton以下の代わりにとそのimage属性を使用して、同じ外観と機能を得ることができ<h:graphicImage>ます。

<a4j:commandButton image="../../images/table_icon_delete.gif" actionListener="#{mnpAction.deleteMultiNoPortRow}"/>


<h:graphicImage>がテーブルの列にある場合varは、テーブルの をベーキング Bean のメソッドに渡し、 を使用せずにその要素をリストから削除できますrow index。ここではactionの代わりに使用しactionListenerます。

<a4j:support id="deleteRowBtn" event="onclick" action="#{mnpAction.remove(myVar)}".../>

In mnpAction bean (Assuming the type of your list is T)

public void remove(T s) {
   mnpBean.getMultiNoPortingList().remove(s);
}

Edit:
Since you are using JSF1.2 you may not use #{mnpAction.remove(myVar)}" to pass parameters to the bean if you don't like to upgrade your EL library.

于 2012-12-13T13:58:17.990 に答える