здравствуйте. находясь непосредственно на странице, всё работает. а при переходах без перезагрузки (методом load, когда в блоке меняется только содержимое страницы), данные формы (аргумент data) скрипту не передаются. использую для отправки формы следующую хрестоматийную функцию: Код (Text): function saveform (data,bez) { var name=data.name.value; var city=data.city.value; var music=data.music.value; var date=data.date.value+' '+data.time.value; var message=data.message.value; var view=data.view.value; $.post('admin/song.php?bez='+bez,{name:name,city:city, music:music,date:date,message:message,view:view},function(data){ $('.form_settings').html(data); },'json'); } подскажите, в чём дело, где что забыл или не учёл
В вашем коде я такого метода не обнаружил, но суть скорее не в этом. Если ваша форма динамически подгружается на страницу, то необходимо использовать делегированную обработку событий. Кроме того, что гораздо важнее, onckick и другие обработчики событий прописывать в html - это не есть гуд в принципе, а с использованием jQuery, может приводить к неправильной работе всего сценария. В общем, попробуйте так: Код (PHP): $('parent_static').on('click', 'submit_button_selector',function(e){ e.preventDefault(); /* далее ваш код ajax-запроса */ }); Где parent_static - это любой (лучше ближайший) родительский статичный элемент. И конечно же, убрать все onclick и иже с ними. P.S. Кстати, если вам нужно собрать все данные полей формы, то можно это сделать проще: методы serialize() или serializeArray()
это метод фреймворка jQuery подразумевается. nikemat, дайте посмотреть в живую вашу страницу. не могу у себя воспроизвести ваши условия. рисую форму, навешиваю вашу функцию, всё отправляется и на стороне пхп всё видно.
клик по кнопке работает ок. но сама форма кривая (если быть точным - кончается после первого же поля) поэтому обработчик формы запинается на поиске указанных в его теле полей формы. а поскольку проверки исключений никакой нет - прекращается и выполнение обработчика формы.
ну а где искать-то этот косяк? откуда взялось закрытие формы, если в самой форме всё правильно... может со скриптами конфликт? как это использовать? это будет агрумент, передаваемый в функции при клике или разбор внутри функции?
косяк во вложенности. основы xml надо проходить до того как верстать начинать. то что я зеленым красным выделил это то как рвется форма. а рвется она потому что она не может начинаться в одном тейблдэйте а кончаться в другом. прямая загрузка не лечит этот косяк - браузер успевает придумать правильное наследование. а вот с загрузкой через аякс всё обламывается - жс "восстанавливает" правильных хмл и закрывает форму перед закрытием тейблдаты в котором она объявлена. если надо сверстать форму таблицей то тег формы должен быть стаканом для таблицы а не наоборот.