相关疑难解决方法(0)

当用户按下按钮但不能正常工作时,jquery ui对话框需要返回值

我有一个jquery ui对话框我想用来提示用户确认删除.当用户按下"是"或"否"时,我需要返回"True"或"False"以继续执行一些javascript.下面的代码的问题是当对话框显示它立即执行"return true"时 但用户还没按下"是"按钮呢?

我究竟做错了什么?

HTML:

<div id="modal_confirm_yes_no" title="Confirm"></div>
Run Code Online (Sandbox Code Playgroud)

Javascript电话:

$("#modal_confirm_yes_no").html("Are you sure you want to delete this?");
var answer = $("#modal_confirm_yes_no").dialog("open");

if (answer)
{
     //delete
}
else
{
     //don't delete
}
Run Code Online (Sandbox Code Playgroud)

Jquery对话框:

$("#modal_confirm_yes_no").dialog({
                bgiframe: true,
                autoOpen: false,
                minHeight: 200,
                width: 350,
                modal: true,
                closeOnEscape: false,
                draggable: false,
                resizable: false,
                buttons: {
                        'Yes': function(){
                            $(this).dialog('close');
                            return true;
                        },
                        'No': function(){
                            $(this).dialog('close');
                            return false;
                        }
                    }
            });
Run Code Online (Sandbox Code Playgroud)

jquery jquery-ui

21
推荐指数
1
解决办法
4万
查看次数

jQuery Deferred和Dialog框

function ValidateField(){
var bAllow= true;

    //some checking here

if (bAllow == true && apl.val().trim() == "")
{ 
    showDialog(); 
    showDialog().done(function() {
        return true; // wanna return true, but not success
    }).fail(function() {
        return false; //wanna return false, but not success
    });
    return false; //stop it to execute to next line
}
return bAllow; //success return }

function showDialog(){
var def = $.Deferred();
var modPop = '<div id="diaCom" title="Information?"><p>something something</p></div>';
$("#diaCom").remove();
$(modPop).appendTo('body');
$("#diaCom").dialog({
    resizable: false,
    draggable: false,
    height:150,
    width:300,
    modal: true,
    buttons: …
Run Code Online (Sandbox Code Playgroud)

javascript jquery jquery-ui

13
推荐指数
2
解决办法
4万
查看次数

返回jquery UI对话框的值

您可以在许多帖子(Post 1,Post2)中找到解决方案,但他们的解决方案对我不起作用.

这是我编写的普通jquery对话框.

$("#dialog").dialog({
        autoOpen:false,
        buttons:{
            "ok":function(){                                        
                        $(this).dialog("close"); 
                        return true;                                                                    
                    },
            "cancel":function(){                          
                        $(this).dialog("close");     return false;                  
                }
            }   
});
Run Code Online (Sandbox Code Playgroud)

我将用代码打开对话框:

var returnVal=$("#dialog").dialog("open");
Run Code Online (Sandbox Code Playgroud)

我需要返回false,如果用户点击"取消"并返回,true如果用户点击"确定".

var returnVal=$("#dialog").dialog("open");
Run Code Online (Sandbox Code Playgroud)

我需要returnVal返回boolean值(true/false),但它返回javascript object.

javascript jquery jquery-ui jquery-ui-dialog

4
推荐指数
2
解决办法
4万
查看次数

标签 统计

jquery ×3

jquery-ui ×3

javascript ×2

jquery-ui-dialog ×1