我正在关注 jQuery UI 网站上的模态对话框示例,但没有任何运气可以显示对话框。该示例通过单击按钮创建并打开对话框,但我试图通过单击 TD 元素来启动它。那可能吗?
问问题
669 次
2 回答
0
这段代码基本上创建了一个块 UI。您可以使用 jquery blockUI 插件,而不是使用 jquery block UI 对话框。您可以参考链接以了解代码。 http://www.malsup.com/jquery/block/#demos 在下面的示例中,#yourtd_id 是您的 td 的 id,而 #your_div 是您想要制作为模态的 div。单击 td 时,.blockUI 是一个在屏幕上显示 your_div 的类。现在它就像一个模态对话框。要退出模态对话框,请在 #your_div 上插入一个按钮并将 id 指定为 #cancel_btn。单击#cancel_btn 时,.unblockUI() 解除对UI 的阻止,即解除对模式对话框的阻止。
$(document).ready(function() {
$('#yourtd_id').click(function() {
$.blockUI({ message: $('#your_div') });
//keep a cancel button on #your_div. for eg: consider its id as #cancel_btn
});
$('#cancel_btn').click(function(){
$.unblockUI();
});
});
这会奏效。我希望这会对你有所帮助。
于 2013-09-08T15:48:24.303 回答
0
假设您的td
元素具有clickable_td
id 并且您的对话框块也具有dialog
id,因此您可以将 td emelent 的单击事件处理程序与on()
函数对象附加,并在捕获的点击时显示带有函数对象的对话框块,dialog()
如下所示:
$('#clickable_td').on('click',function(){$('#dialog').dialog();});
注意:默认的 jQuery z-index 是 100,如果你的布局元素有更高的值,试试这个:
$('#clickable_td').on('click',function(){$('#dialog').dialog();$('div.ui-front').removeClass('ui-front').css({zIndex: "10000"})});
于 2013-09-08T15:12:21.740 回答