Как я могу перенаправить из действий формы, используя JQuery UI Dialog?
Я использую Rails-помощник по URL, который (для защиты ботов и т. Д.) Вкладывает перенаправление в форму, например так:
<form method="post" action="/projects/1/personal/4/edit_income?criterion=4" class="button-to"><div><input name="_method" type="hidden" value="put" /><input class="requires_confirmation" type="submit" value="edit space parameters" /><input name="authenticity_token" type="hidden" value="4Q/E359jxXUcu7TSVm+cqdjj94RAdQpV+DIv7OUQ+Gg=" /></div></form>
(Выше метод не должен быть POST...)
Я хочу обрабатывать щелчки на этом элементе.button-to с помощью диалогового окна jQuery UI, например:
$('.button-to').click(function(e){
$( "#dialog-confirm" ).dialog({
resizable: false,
height:250,
buttons: {
"Save": function() {
// SAVE CERTAIN DATA ELEMENTS HERE...
$( this ).dialog( "close" );
// FOLLOW FORM REDIRECT...
},
"Don't save": function() {
$( this ).dialog( "close" );
// FOLLOW FORM REDIRECT...
},
Cancel: function() {
$( this ).dialog( "close" );
// BUT CANCEL REDIRECT IN THIS CASE!
}
}
});
})
Кажется, что подобные вещи будут появляться постоянно, но я не могу найти ничего, что помогло бы мне достичь желаемого результата. Какие-либо предложения?
Спасибо,
Лилль
1 ответ
Наткнулся на этот вопрос после публикации аналогичного. В основном, я нашел с помощью .data
Коллекция работает лучше всего. Установите некоторые переменные в $('#dialog').data
до создания экземпляра, а затем вы можете использовать форму, чтобы изменить их по мере необходимости.
Затем вы можете использовать открытые методы диалога (или свои собственные), чтобы проверить эти значения и действовать соответственно.
Для получения дополнительной информации см. Мой вопрос и мой ответ самому себе на аналогичный вопрос.