gpt4 book ai didi

jQuery UI 选项卡和对话框 - 如何基于对话框插件确认切换选项卡?

转载 作者:行者123 更新时间:2023-12-01 08:27:33 26 4
gpt4 key购买 nike

因此,目标是使用 UI 对话框插件确认切换到另一个 UI 选项卡。使用通用的确认方法很简单:

jQuery("#tabsContainer").tabs({
select: function(event, ui) {
return confirm("Some confirmation message...");
}
});

但是如何使用对话框模式框实现相同的行为?

我想我必须打电话:

jQuery("#tabsContainer").tabs("select", ui.index);

关于“ok回调”,但这并没有像我预期的那样工作。另外 - 没有报告任何错误...

jQuery("#tabsContainer").tabs({
select: function(event, ui) {
jQuery("#dialogContainer").dialog({
buttons: {
'Ok': function() {
jQuery("#tabsContainer").tabs("select", ui.index);
},
Cancel: function() { return; }
}
});
return false;
}
});

最佳答案

问题的根源在于 window.confirm 被阻止,而 jQuery UI 的对话框则没有。您可以通过以不同的方式构建代码来解决这个问题。以下是许多可能的方法之一:

$(function() {
jQuery('#tabsContainer').tabs({
select: function(event, ui) {
// only allow a new tab to be selected if the
// confirmation dialog is currently open. if it's
// not currently open, cancel the switch and show
// the confirmation dialog.
if (!jQuery('#dialogContainer').dialog('isOpen')) {
$('#dialogContainer')
.data('tabId', ui.index)
.dialog('open');
return false;
}
}
});

jQuery('#dialogContainer').dialog({
autoOpen: false,
buttons: {
'Ok': function() {
// a new tab must be selected before
// the confirmation dialog is closed
var tabId = $(this).data('tabId');
$('#tabsContainer').tabs('select', tabId);
$(this).dialog('close');
},
'Cancel': function() {
$(this).dialog('close');
}
}
});
});

关于jQuery UI 选项卡和对话框 - 如何基于对话框插件确认切换选项卡?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2631064/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com