Удалите обратную косую черту из двойных кавычек в атрибуте div id
.Их не нужно экранировать, потому что строка уже заключена в одинарные кавычки.
jQuery('#show-form').replaceWith('<div id="show-form">Hide Form</div>');
Кроме того, переместите replaceWith()
в функцию обратного вызова для show и hide.
jQuery('#the-form').show('fast', function(e) {
jQuery('#show-form').replaceWith('<div id="show-form">Hide Form</div>');
});
Затем вам нужно снова присоединить событие click к # show-form.Вы можете присоединять события на лету, используя jQuery live()
. Смотрите об этом здесь .
Так что, может быть, лучше использовать html()
.
Например,
jQuery('#show-form').html('Hide Form');
Таким образом,вы не удаляете и не читаете новый элемент DOM, поэтому оригинальный слушатель события onclick остается без изменений.