Как я могу перенаправить из действий формы, используя JQuery UI Dialog? - PullRequest
0 голосов
/ 13 декабря 2010

Я использую 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 Ответ

1 голос
/ 05 апреля 2011

наткнулся на этот вопрос после публикации аналогичного. По сути, я обнаружил, что использование коллекции .data работает лучше всего. Установите некоторые переменные в $('#dialog').data перед созданием экземпляра, а затем вы можете использовать форму для их изменения по мере необходимости.

Затем вы можете использовать открытые методы диалога (или свои собственные), чтобы проверить эти значения и действовать соответственно.

Подробнее см. мой вопрос и мой ответ себе на аналогичный вопрос.

...