如何在不使用生成的按钮的情况下从JQuery UI关闭.dialog窗口
嘿,伙计们,在JQuery ui中,它会生成一个紧密的链接,一旦单击它就会关闭对话框。我的问题是如何不用那个按钮就把它关掉 我有一个弹出的服务条款,我需要使用如何在不使用生成的按钮的情况下从JQuery UI关闭.dialog窗口,jquery,jquery-ui,Jquery,Jquery Ui,嘿,伙计们,在JQuery ui中,它会生成一个紧密的链接,一旦单击它就会关闭对话框。我的问题是如何不用那个按钮就把它关掉 我有一个弹出的服务条款,我需要使用拒绝条款链接,而不是从ui生成的关闭按钮 所以,让我知道我是如何做到这一点的,谢谢:) 编辑: 我使用了下面的代码,没有雪茄-告诉我未捕获的错误:无法在初始化之前调用对话框上的方法;试图调用方法“close” function decline(){ $( '#decline' ).dialog( 'close' );
拒绝条款
链接,而不是从ui生成的关闭按钮
所以,让我知道我是如何做到这一点的,谢谢:)
编辑:
我使用了下面的代码,没有雪茄-告诉我未捕获的错误:无法在初始化之前调用对话框上的方法;试图调用方法“close”
function decline(){
$( '#decline' ).dialog( 'close' );
}
单击选择器后,会有一个onclick=“”,将其发送到此处。选择器是一个id=“拒绝”
下面是我的页面上获取对话框的全部代码-
$(function() {
$( "dialog:ui-dialog" ).dialog( "destroy" );
});
function showUrlInDialog(url){
var tag = $("<div></div>");
$.ajax({
url: url,
success: function(data) {
tag.html(data).dialog
({
width: '100%',
modal: true
}).dialog('open');
}
});
}
function agree(){
alert("Handler for .click() called.");
}
function decline(){
$( '#decline' ).dialog( 'close' );
}
terms container是initilizer从另一个文件获取数据的主div尝试使用$('.dialog').dialog('close')代码>
用选择器替换“.dialog”
$( 'a#decline' ).on( 'click', function() {
$( this ).closest( '.ui-dialog' ).dialog( 'close' );
}) ;
因为您的代码是使用内联javascript设置的,所以上述方法不起作用。尝试将您的递减函数更改为此
function decline() {
$( 'dialog:ui-dialog' ).dialog( 'close' );
// OR THIS
$( '.ui-dialog' ).children( 'div' ).eq( 0 ).dialog( 'close' );
}
尝试使用$('.dialog').dialog('close')代码>
用选择器替换“.dialog”
$( 'a#decline' ).on( 'click', function() {
$( this ).closest( '.ui-dialog' ).dialog( 'close' );
}) ;
因为您的代码是使用内联javascript设置的,所以上述方法不起作用。尝试将您的递减函数更改为此
function decline() {
$( 'dialog:ui-dialog' ).dialog( 'close' );
// OR THIS
$( '.ui-dialog' ).children( 'div' ).eq( 0 ).dialog( 'close' );
}
由于您需要从其他地方关闭对话框,因此我建议创建一个div,从ajax调用中获取html,而不是动态创建它。
Html:
由于您需要从其他地方关闭对话框,因此我建议创建一个div,从ajax调用中获取html,而不是动态创建它。
Html:
需要你提供更多信息,因为有了这段代码,对话框应该已经初始化了。。。假设链接位于modalyeah中,则调用链接上的“关闭”对话框。将其更改为整个对话框的选择器该对话框不提供给,而是提供给您在ajax调用中创建的div。哦,另一个文件中的主div-它获取内容的地方是一个名为#terms container的div-我使用它吗?是的,对话框的id需要您提供更多信息,因为有了这段代码,对话框应该已经初始化。。。假设链接位于modalyeah中,则调用链接上的“关闭”对话框。将其更改为整个对话框的选择器该对话框不提供给,而是提供给您在ajax调用中创建的div。哦,另一个文件中的主div-它获取内容的地方是一个名为#terms container的div-我使用它吗?是的,对话框的id可以添加对话框初始化代码吗?可以添加对话框初始化代码吗?
function decline() {
$( 'dialog:ui-dialog' ).dialog( 'close' );
// OR THIS
$( '.ui-dialog' ).children( 'div' ).eq( 0 ).dialog( 'close' );
}
<a href="#" onclick="showUrlInDialog('termsofservice.php'); return false;">link to page B</a>
<a href="#" onclick="decline();" id="decline"><span >I decline these terms</span></a>
<div id="dialog-container"></div>
$(function() {
$("#dialog-container").dialog( "destroy" );
});
function showUrlInDialog(url){
var tag = $("#dialog-container");
$.ajax({
url: url,
success: function(data) {
tag.html(data).dialog
({
width: '100%',
modal: true
}).dialog('open');
}
});
}
function agree(){
alert("Handler for .click() called.");
}
function decline(){
$("#dialog-container").dialog( 'close' );
}