0

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 });
                            }
                        });
                    }
                }
            });
        }
4

1 に答える 1

5

あなたは電話することでそれを得ることができます

var title = $( ".selector" ).dialog( "option", "title" );

http://api.jqueryui.com/1.9/dialog/#option-titleを参照してください

これらのオプションは dom 要素のデータに含まれています

$("div#dialog").data("uiDialog").options.title

jQuery のバージョンと将来の変更に依存する可能性があるため、この 2 番目の方法を使用することはお勧めしません。

もちろん、セレクターを調整して適切なダイアログを選択します。ダイアログボタンからこの ajax を呼び出す場合は、次のようにする必要があります。$(this)

于 2013-03-06T11:27:25.683 に答える