如何获取包含Jquery对话框的标题?

时间:2013-03-06 11:16:38

标签: jquery

我需要将jquery对话框的标题发送到服务器,是否可以在不遍历DOM的情况下检索它并找到?

我知道(<span class="ui-dialog-title"></span>)可以使用jQuery检索,但我想知道是否有更好的方法。

 $(c[0]).html(html).dialog({
                title: "Brief Country List",
                resizable: false,
                draggable: false,
                width: 900,
                modal: true,
                autoOpen: true,
                buttons: {
                    Done: function () {
                        Neptune.BriefCountrySection.SaveCountry();
                    },
                    Export: function () {

                        $.ajax({
                            type: 'POST',
                            url: '/Briefs/ExportCsv',
                            data: /*Get the title here*/,
                            dataType: 'JSON',
                            contentType: 'application/json; charset=utf-8',
                            success: function (res) {
                                if (res.Success) {
                                    var item = ko.utils.arrayFirst(self.Countries(), function (i) {
                                        return i.ListID() == self.SelectedCountryListID();
                                    });

                                    if (item != null) {
                                        self.Countries.remove(item);
                                    }
                                }
                                else {
                                    Neptune.ShowAlert({ content: res.FriendlyErrorMessage });
                                }
                            },
                            error: function (jqXHR, status, err) {
                                Neptune.ShowAlert({ content: status });
                            }
                        });
                    }
                }
            });
        }

1 个答案:

答案 0 :(得分:5)

您可以通过致电

来解决这个问题
var title = $( ".selector" ).dialog( "option", "title" );

请参阅http://api.jqueryui.com/1.9/dialog/#option-title

这些选项包含在dom元素

的数据中
$("div#dialog").data("uiDialog").options.title

我不建议使用第二种方式,因为它可能依赖于jQuery版本并在将来进行更改,它只是说明它是如何工作的。

当然,调整选择器以选择正确的对话框,如果从对话框按钮调用此ajax,那么它应该是$(this)