| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java EE (J2EE) и Spring > Wicket: как сделать селектируемый список? |
| Автор: mitrofan 26.7.2007, 13:01 | ||
| Приложение написано при помощи wicket. Делаю вот такой список, добавляю его на форму
теперь хочу чтобы строчки этого списка можно было селектировать, т.е. когда кликаешь мышкой чтобы строчка выделялась(цветом или еще как-нибудь, не важно). Кто-нибудь знает как можно сделать? |
| Автор: mitrofan 27.7.2007, 05:53 |
| up |
| Автор: onsh76 30.7.2007, 05:18 | ||||||
Есть такой класс AttributeModifier, метод
Есть альтернатива, наверное даже и проще будет: wicket.behavior.SimpleAttributeModifier класс. При обработке компонента, представляющего строку таблицы, вклинь (inline) новый css class на строку таблицы, что-то вроде этого:
|
| Автор: mitrofan 30.7.2007, 10:22 |
| ага, сработало, спасибо. |
| Автор: onsh76 30.7.2007, 19:37 | ||
Пожалуйста, рад был помочь... Вижу теперь - не http://forum.vingrad.ru/forum/topic-140312/kw-wicket-java-web-framework/hl/wicket/index.html я с Wicket-ом балуюсь... Сейчас в издательстве Manning появилась книга Wicket in Action, пока через Manning Early Access Program (MEAP), http://manning.com/dashorst/meap_wicketch1.pdf. Это вторая книга про этот фрэймворк, первая была от APress, я честно говоря что-то не в восторге оказался от неё - стиль автора не очень понравился... Надеюсь, что на сей раз будет получше, оба автора - разработчики Wicket-а... |
| Автор: mitrofan 1.8.2007, 09:14 |
| Первая книга действительно беспонтовая(Pro Wicket которая), ниче там полезного не нашел, а вот первая глава этой книги мне очень понравилась, где бы ее теперь целиком взять. Ну ладно, раз я нашел единомышленника тогда сразу следующий вопрос. В общем ситуация такая: имеем форму, на ней как раз расположен вот этот селектируемый список, а также некоторые другие контролы(в основном TextEdit), которые привязаны к той же модели что и выбранная строка в списке. В общем цель такая - хочется бегать по списку, а в полях чтобы отображались значения из селектируемой строки. Я в списке повесил AjaxEventBehavior("onclick") на онклик, и там меняю модель, к которой привязаны и строка и другие контролы, потом делаю target.addComponent(имя контрола), модель меняется, я проверил, а вот значения в контролах почему-то не хотят. |
| Автор: mitrofan 2.8.2007, 06:57 |
| В общем в результате экспериментов суть проблемы свелась к вопросу - "для чего метод setOutputMarkupId у компоненты?", в документации написано "Sets whether or not component will output id attribute into the markup. id attribute will be set to the value returned from getMarkupId(). " Если его установить true, то все работает, значение в контроле перерисовывыется, но блин, а если мне нужно не один контрол перерисовать, а пачкой, че мне каждому этот флажок менять чтоли. Модель у них одна установлена(т.е. меняю модель в одном месте, значения контролов тоже меняются), и в таргет их добавляю по эвенту, но вот если этот флаг не стоит, то хоть заменяйся модель, на форме изменений не увидишь. |
| Автор: mitrofan 5.8.2007, 13:56 |
| up |
| Автор: lostinwired 6.8.2007, 01:47 |
| У компонента должен быть установлен setOutputMarkupId в true, чтобы его можно было обновлять. Если нужно весь список обновить, ставь только у ListView, если каждый элемент отдельно, то у каждого элемента. |
| Автор: lexx2006 30.6.2008, 13:04 |
| Привет, всем...вопрос на счет взаимодействия wicket и ajax. Использую AjaxLink. Есть html форма с полями ввода данных. Не могу получить значение из поля при нажатии на ентот AjaxLink. Не подскажите что да как? |
| Автор: onsh76 7.7.2008, 10:22 | ||
Извини, но думаю, что будет корректно напомнить, что твой вопрос не совсем стыкуется с топиком. На мой взгляд, нужно новую тему создать... В новой теме: опиши, как используется АjaxLink в форме: в качестве кнопки "сабмит" или еще там чего. Маловато деталей... |