Передача данных в модальные формы (JQuery UI) - PullRequest
1 голос
/ 30 июня 2011

Я сейчас загружаю модальную форму, когда вставляю новый узел в jstree, используя следующий код:

$("#structureForm").dialog({
            autoOpen: false,
            height: 120,
            width: 300,
            modal: true,
            buttons: {
                "Create new structure": function() {
                    $("#structureBuilderTable").jstree("create", /*parent node*/, "inside", title.val(), null, true);
                },
                "Cancel": function(){
                    $(this).dialog("close");
                }
            },
            close: function(){
                /* do something */
            }
})

И затем я вызываю диалоговое окно:

            var parent = $(e.target).closest('.structureNode');
            $("#structureForm").dialog("open");

Однако мне нужно передать родительский узел в диалоговое окно, чтобы правильно создать новый узел (а также для генерации правильного идентификатора).Есть ли способ передать (или добавить) данные в модальную форму?Я попытался использовать:

.data('parent', this)

, но не нашел способа манипулировать «родительской» строкой для извлечения идентификатора.

Любая помощь будет очень оценил: -)

1 Ответ

1 голос
/ 30 июня 2011

Использование .data() должно работать для вас:

$("#structureForm").dialog({
    /* snip */
    buttons: {
        "Create new structure": function() {
            var parent = $(this).data("parent");
            $("#structureBuilderTable").jstree("create", parent, "inside", title.val(), null, true);
        }
     }
});

А затем вызвать диалог:

 var parent = $(e.target).closest('.structureNode');
 $("#structureForm").data("parent", parent).dialog("open");
...