私のテーブルの最後の列はボタンです。したがって、各行の最後の列にボタンがあります。実装しようとしているのは、適切な行を削除する必要があるボタンのオンクリックです。そのため、ボタンをクリックしてリストの現在のインデックスを取得する必要があります。これを達成/取得する方法は?
2530 次
3 に答える
1
ListView
リピーターと他のリピーターの使用方法を理解するには、リピーターのウィケットの例のページをご覧ください。
http://www.wicket-library.com/wicket-examples/repeater/
リストの現在のインデックスは、から取得できます。item.getIndex()
protected void populateItem(final ListItem<T> item) {
int index = item.getIndex();
...
于 2013-03-15T07:53:33.493 に答える
1
私は Ajax ボタンを拡張し、コンストラクターで行参照 (項目) を渡します...その後、onSubmit メソッドをオーバーライドすることで、何でもできます。
例:
private class SpecialButton extends AjaxButton {
final Item<Object> rowItem;
public SpecialButton(final String id, final Item<Object> rowItem) {
super(id);
this.rowItem = rowItem;
}
@Override
protected void onSubmit(final AjaxRequestTarget target, final Form<?> form) {
// here you cand do everything you want with the item and the model object of the item.(row)
Object object = rowItem.getModelObject();
}
}
Object fromItem<Object>
をリピータ モデルに置き換える必要があります。このプライベート クラスを作成したら、リピーターのすべての行で再利用できます。
その行を削除したい場合は、リピーターの生成に使用されたリストからモデルを削除し、リピーター コンテナーを更新するだけです (Wicket では、リピーターをターゲットに追加して更新することはできません...代わりに、リピーターコンティナーを追加します。)
于 2013-03-15T20:34:23.813 に答える
0
適切に行う方法のインスピレーションについては、ここを参照してください (インデックスなし):
于 2013-03-15T15:44:48.430 に答える