私のフォームでは、テキストを入力してからdataViewを入力しました:
private class RegistrationForm extends Form<Table> {
private static final long serialVersionUID = 1L;
public RegistrationForm(final Table table) {
super("registrationForm", new CompoundPropertyModel<Table>(table));
setOutputMarkupId(true);
final TextField<String> text = new TextField<String>("name");
add(text);
DataView<Player> dataView = new DataView<Player>("rows", playerDataProvider) {
private static final long serialVersionUID = 1L;
@Override
protected void populateItem(final Item<Player> listItem) {
...
listItem で、行をダブルクリックすると ajaxEventBehavior を追加します。
listItem.add(new AjaxEventBehavior("ondblclick") {
private static final long serialVersionUID = 1L;
@Override
protected void onEvent(final AjaxRequestTarget target) {
System.out.println(table.getName());
}
});
問題は、テーブルをダブルクリックすると、入力 TextField にある値ではなく null が出力されることです。なんで ?
モデルを更新しようとしています:
text.updateModel();
またはテキストから値を取得します。
System.out.println(table.getName() + "bbbbbbbbbbbbbbbbb" + text.getInput() + "vv"
+ text.getValue() + "ff");
しかし、成功しませんでした。
フォームには送信ボタンもあり、それを押すとすべてが機能すると思います。ダブルクリックだけで問題が発生する