返回jquery UI对话框的值
您可以在许多post( Post 1 , Post2 )中找到解决方案,但他们的解决方案对我不起作用。
这是我编写的普通jquery对话框。
$("#dialog").dialog({ autoOpen:false, buttons:{ "ok":function(){ $(this).dialog("close"); return true; }, "cancel":function(){ $(this).dialog("close"); return false; } } });
我将用代码打开对话框:
var returnVal=$("#dialog").dialog("open");
如果用户点击“取消”,我需要返回false
,如果用户点击“确定”,则返回true
。
var returnVal=$("#dialog").dialog("open");
我需要returnVal
返回boolean
值(true / false),但它返回javascript object
。
您无法从确定/取消function返回任何内容,因为它们本质上是仅在单击按钮时处理的事件处理程序。
使用单独的函数来处理结果:
$mydialog = $("#dialog").dialog({ autoOpen: false, buttons: { "ok": function() { $(this).dialog("close"); processResult(true); }, "cancel": function() { $(this).dialog("close"); processResult(false); } } }); $mydialog.dialog("open"); function processResult(result) { alert(result); }
工作示例: http : //jsfiddle.net/nz2dH/
我已经实现了Yes / No确认对话框,其中包含自定义消息和回调函数。 如果您想为各种目的使用相同的对话框,这很有用。
希望这也有助于其他人:)