У меня есть страница, на которой пользователь добавляет и редактирует список книг. Вы можете перемещать их, добавлять новые книги, редактировать книги уже там ...
Чтобы добавить или отредактировать каждую отдельную книгу, появится диалоговое окно, содержащее форму с несколькими полями ввода: название, автор, жанр и т. Д. У меня также есть плагин Watermark, помещающий текст по умолчанию в каждое из этих полей.
Вместо того, чтобы перебирать и сбрасывать каждое из этих полей ПОСЛЕ того, как каждая книга сохраняется обратно в основной список, и диалог закрывается, чтобы подготовить форму для следующей книги, я думаю, что будет проще просто использовать клон формы каждый раз, а затем просто выбрасывать клон после каждого сохранения:
$( "#addEditBook" ).click(function() {
$("#bookForm").clone().removeAttr("id").attr("id", "clonedBookForm").insertAfter("#bookForm");
$( "#clonedBookForm" ).dialog( "open" );
return false;
});
В FireBug я вижу, как создается #clonedBookForm
. И это идентично #bookForm
под ним.
Но в следующей строке .dialog( "open" );
выдает эту ошибку:
uncaught exception: cannot call methods on dialog prior to initialization; attempted to call method 'open'
Примечание: я знаю
$( "#clonedBookForm" ).dialog({
autoOpen: false,
modal: true,
resizable: false,
draggable: false,
etc., etc.
... работает, потому что он отлично работает с оригинальным #bookForm
. Что-то о событиях, которые не были клонированы?
Мне бы хотелось разобраться с этим, потому что я представляю, что выброшенные клоны вещей могли бы реально сэкономить время ...
Заранее спасибо!