Есть задача - грузить вебформу с помощью AJAX во всплывающее окошко, а при сабмите закрывать окошко и выводить сообщение, что все хорошо.
Формы строятся модулем Webform.
Решил не извращаться и делать на чистом jquery, благо там кода - всего-ничего.
Задача была решена, но оказалось, что форма сабмитится только для админа, для анонимного пользователя ничего не происходит.
Код обработчика такой.
$("#webform").submit(function(e) {
e.preventDefault();
$.ajax(
{
type: 'post',
url: $("#webform").attr("action"),
data: $("#webform").serialize(),
cache: false
});
});
Для админа при просмотре в Chrome видно, что после запроса POST через некоторое время приходит ответ done, в котором возвращают sid заполнения.
Для анонимуса после запроса POST ничего не возвращается.
Кто подскажет в чем могут быть грабли?
Комментарии
Имеет место быть ограничение прав.
Если есть время попробуйте создать простой модуль с формой и проверить её сабмит, а там решать по месту.
Если нету то ждите. Мб кто и решал данную проблему.
Бред какой-то. На чисто сборке друпала все нормально сабмитится для всех типов пользователей.
Теперь вопрос - что может мешать работать AJAX'у?
> Решил не извращаться и делать на чистом jquery, благо там кода - > всего-ничего.
Не Drupal-way решение. Для вашей задачи идеально подходить ctools с его модальными фреймами.
Проблему решили?