drupal 7 предотвращает перенаправление в модальном окне (ctools) при отправке
Я поместил форму (созданную с помощью entityform) в модал (ctools modal), используя jquery.
Теперь происходит то, что, когда я нажимаю кнопку "отправить", меня перенаправляют на другую страницу, где я отображаю сообщение "успех".
Я хотел бы избежать перенаправления и отображать сообщение "успех" в модале (на той же странице, где появляется модал).
Заранее спасибо.
Это jquery, который я использовал для запуска модального по клику:
(function ($) {
Drupal.behaviors.tuo = {
attach: function (context, settings) {
$('#comments_button', context).click(function () {
$('#suggerimenti').dialog('open');
$('.ui-dialog-titlebar').append($('h2', '#block-views-invio-suggerimenti-block'));
$('.ui-dialog-content').append($('form', '#block-views-invio-suggerimenti-block'));
});
$('#suggerimenti').dialog({
autoOpen:false,
minWidth:500,
});
}
}; }) (Jquery);
И это HTML-код формы, созданной Drupal:
<form id="prova-invio-entityform-edit-form" class="entityform entitytype-prova_invio-form" accept-charset="UTF-8" method="post" action="/tuo_tema_dev2/?q=content/blandit-ratis-usitas-valde">
<div>
<div class="pre-intructions"></div>
<div id="edit-field-suggerimento-new" class="field-type-text-long field-name-field-suggerimento-new field-widget-text-textarea form-wrapper">
<div id="edit-field-refer" class="field-type-entityreference field-name-field-refer field-widget-entityreference-autocomplete form-wrapper">
<div id="edit-actions--3" class="form-actions form-wrapper">
<input id="edit-submit--4" class="form-submit ajax-processed" type="submit" value="invia suggerimento" name="op">
</div>
</div>
</form>
1 ответ
Вы можете добавить скрытое значение формы к вашей форме при использовании модального представления (проверьте, установлен ли ваш ajax в URL). Затем в вашей функции отправки удалите ваше перенаправление, когда присутствует значение формы. Предполагая, что это установлено с помощью $form_state
используя эту строку:
unset($form_state['redirect']);
Мы можем оказать вам дополнительную помощь, если вы приложите код своей формы. Мне кажется, это более актуально для этой проблемы, чем ваш JavaScript.