клонирование компонентов ExtJS с использованием JQuery - PullRequest
1 голос
/ 07 января 2009

Я пытаюсь клонировать компоненты формы, используя JQuery .clone () (на самом деле, я клонирую коллекцию полей, клонируя элемент контейнера). Все работало хорошо, за исключением того, что поле даты, выпадающие списки не работают, даже проверка minLength и т. Д. Также не работает.

Кстати, я просто преобразовываю старые поля формы html в поля формы ext js, используя applyTo

Ответы [ 2 ]

2 голосов
/ 07 января 2009

Проблема в том, что jQuery clone () не клонирует обработчики событий связанные с элементами DOM. Но даже если вы используете клон (правда), это копирует обработчики событий, это все еще не работает, потому что вы также необходимо клонировать объект Ext на стороне JavaScript.

Вам действительно нужно использовать инструменты, предоставляемые Ext, для создания многих аналогичные элементы управления. Хорошее начало - создание пользовательских компонентов Ext , что вы можете легко создать его несколько раз.

1 голос
/ 07 января 2009

Для начала вы можете попробовать использовать

.clone(true) 

поэтому копируются все обработчики событий для элемента. Кроме того, я подозреваю, что Extjs делает некоторые другие вещи при создании своих элементов управления, поэтому это, вероятно, только первый шаг к тому, чтобы заставить его работать. Оглядываясь быстро на форумах extjs, я не вижу много информации о клонировании виджетов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...