我已经创建了一个JQuery小部件来弹出一个对话框,并从该对话框中提供要接受的值
我的函数定义对话关闭
 _ebSaveDialogue: function () {
     //Saving Dialogue
     $('#ebDialogueClose').click(function () {
         var text = $('#ebPlaceholder').val();
         returnText = text;
         $('#ebDialogue_div').dialog("close");
     });
 }如何在关闭对话时获取html页面中的returnText值?
我尝试调用html中的变量,但它返回null,因为对话既没有打开也没有关闭。我想在对话结束时接收Html格式的数据
小部件
 $.widget('custom.DivPopUp', {
     //Call Constructor
     _create: function () {
         var returnText;
         this._ebDefineDiv();
     },
     _ebDefineDiv: function () {
         if ($("#ebDialogue_div").length == 0) {
             //Bringing Dialogue box
             $("body").append("<div id='ebDialogue_div' title='Expression Builder'></div>");
             var inDialogueDiv = "<div id='ebLeftPanel'></div><div id='ebRightPanel'></div>";
             inDialogueDiv += "<div id='ebSample_div' title='Sample'></div>";
             $('#ebDialogue_div').append(inDialogueDiv);
             this._ebCreateDialoge();
             this._ebSaveDialogue();
         }
     },
     _ebSaveDialogue: function () {
         //Saving Dialogue
         $('#ebDialogueClose').click(function () {
             var text = $('#ebPlaceholder').val();
             returnText = text;
             $('#ebDialogue_div').dialog("close");
         });
     }
 }(jQuery));Html
$('#Id').DivPopUp();发布于 2013-05-22 20:10:45
您需要添加一个callback
所以
$.widget('custom.DivPopUp', {
     //Call Constructor
     _create: function () {
         var returnText;
         this._ebDefineDiv();
     },
     _ebDefineDiv: function () {
         if ($("#ebDialogue_div").length == 0) {
             //Bringing Dialogue box
             $("body").append("<div id='ebDialogue_div' title='Expression Builder'></div>");
             var inDialogueDiv = "<div id='ebLeftPanel'></div><div id='ebRightPanel'></div>";
             inDialogueDiv += "<div id='ebSample_div' title='Sample'></div>";
             $('#ebDialogue_div').append(inDialogueDiv);
             this._ebCreateDialoge();
             this._ebSaveDialogue();
         }
     },
     _ebSaveDialogue: function () {
         //Saving Dialogue
         $('#ebDialogueClose').click(function () {
             var text = $('#ebPlaceholder').val();
             returnText = text;
             $('#ebDialogue_div').dialog("close");
             this._trigger( "complete", null, { value: 100 } );
         });
     }
 }(jQuery));然后
 $('#Id').DivPopUp({complete:function(event, data) {
     var returnText = data.value;
 }});https://stackoverflow.com/questions/16691221
复制相似问题