如何正确关闭此 JQuery 对话框?
How can I correctly close this JQuery dialog?
我完全是 JavaScript 和 JQuery 的新手,我遇到了以下问题。
进入一个页面我有这个对话框:
<div id="dialogReject" title="">
<table style="visibility: hidden;" id="rifiutaTable" border="0" class="standard-table-cls" style="width: 100%!important">
<tbody style="background-color: #ffffff;">
<tr>
<td style="font: 16px Verdana,Geneva,Arial,Helvetica,sans-serif !important">Inserire note di rifiuto</td>
</tr>
<tr>
<td>
<textarea style="visibility: hidden;" rows="5" cols="70" id="myRejectNote"></textarea>
</td>
</tr>
<tr>
<td>
<input class="bottone" readonly="readonly" type="text" value="Rifiuta" onclick="rifiuta()"/>
</td>
</tr>
</tbody>
</table>
</div>
我认为是由这个 JQuery 脚本创建的:
$(document).ready(function() {
larghezza = '950px';
lunghezza = '470px';
lunghezza2 = '530px';
$("#dialogReject").dialog({
autoOpen: false,
//width:'335px',
width:'600px',
modal: true,
show: {
effect: "blind",
duration: 500
},
hide: {
effect: "blind",
duration: 500
}
});
});
如您所见,此对话框包含由 2 个输入标签实现的 2 个按钮,这些:
<td style="text-align: right">
<input class="bottone" readonly="readonly" type="text" value="Annulla" onclick="javascript:window.close()"/>
<input class="bottone" readonly="readonly" type="text" value="Rifiuta" onclick="rifiuta()"/>
</td>
当用户单击 Annulla 按钮时,我希望对话框关闭。
实际上我尝试使用 window.close() 函数,但它不起作用。
我认为要关闭此对话框,我必须使用当用户使用 ESC 键盘按钮时执行的相同事件,该按钮通过简单的动画关闭对话框。
但我真的不知道该怎么做。你能帮我做吗?
Tnx
尝试$("#dialogReject").dialog( "close" );
有关详细信息,请阅读 https://api.jqueryui.com/dialog/
要绑定它,请更改
<input class="bottone" readonly="readonly" type="text" value="Annulla" onclick="javascript:window.close()"/>
到
<input id="closeDialog" class="bottone" readonly="readonly" type="text" value="Annulla"/>
并在之后添加:$("#dialogReject").dialog({ [..your code..] });
$("#closeDialog").click(function(){
$("#dialogReject").dialog( "close" );
})
您必须在 javascript 文件中监听一个事件。
首先为您的关闭按钮设置一个 id,我在这里使用 #closeButton :
$(document).ready(function() {
larghezza = '950px';
lunghezza = '470px';
lunghezza2 = '530px';
$("#dialogReject").dialog({
autoOpen: false,
//width:'335px',
width:'600px',
modal: true,
show: { effect: "blind", duration: 500 },
hide: { effect: "blind", duration: 500 }
});
$("#closeButton").click(function(){
$("#dialogReject").close();
});
});
因为Alex和kaz给出了答案
$("#dialogReject").close();
或者您可以使用通过 jquery 也可以创建的按钮
buttons: {Rifiuta: funstion()
{
rifiuta()
},
Annulla: function() {
$( this ).dialog( "close" );
}
供参考:
https://jqueryui.com/dialog/#modal-confirmation
$( "#dialogReject" ).dialog({
autoOpen: open,
//width:'335px',
width:'600px',
modal: true,
show: { effect: "blind", duration: 500 },
hide: { effect: "blind", duration: 500 },
buttons: {Rifiuta: funstion()
{
rifiuta()
},
Annulla: function() {
$( this ).dialog( "close" );
}
}
});
我完全是 JavaScript 和 JQuery 的新手,我遇到了以下问题。
进入一个页面我有这个对话框:
<div id="dialogReject" title="">
<table style="visibility: hidden;" id="rifiutaTable" border="0" class="standard-table-cls" style="width: 100%!important">
<tbody style="background-color: #ffffff;">
<tr>
<td style="font: 16px Verdana,Geneva,Arial,Helvetica,sans-serif !important">Inserire note di rifiuto</td>
</tr>
<tr>
<td>
<textarea style="visibility: hidden;" rows="5" cols="70" id="myRejectNote"></textarea>
</td>
</tr>
<tr>
<td>
<input class="bottone" readonly="readonly" type="text" value="Rifiuta" onclick="rifiuta()"/>
</td>
</tr>
</tbody>
</table>
</div>
我认为是由这个 JQuery 脚本创建的:
$(document).ready(function() {
larghezza = '950px';
lunghezza = '470px';
lunghezza2 = '530px';
$("#dialogReject").dialog({
autoOpen: false,
//width:'335px',
width:'600px',
modal: true,
show: {
effect: "blind",
duration: 500
},
hide: {
effect: "blind",
duration: 500
}
});
});
如您所见,此对话框包含由 2 个输入标签实现的 2 个按钮,这些:
<td style="text-align: right">
<input class="bottone" readonly="readonly" type="text" value="Annulla" onclick="javascript:window.close()"/>
<input class="bottone" readonly="readonly" type="text" value="Rifiuta" onclick="rifiuta()"/>
</td>
当用户单击 Annulla 按钮时,我希望对话框关闭。
实际上我尝试使用 window.close() 函数,但它不起作用。
我认为要关闭此对话框,我必须使用当用户使用 ESC 键盘按钮时执行的相同事件,该按钮通过简单的动画关闭对话框。
但我真的不知道该怎么做。你能帮我做吗?
Tnx
尝试$("#dialogReject").dialog( "close" );
有关详细信息,请阅读 https://api.jqueryui.com/dialog/
要绑定它,请更改
<input class="bottone" readonly="readonly" type="text" value="Annulla" onclick="javascript:window.close()"/>
到
<input id="closeDialog" class="bottone" readonly="readonly" type="text" value="Annulla"/>
并在之后添加:$("#dialogReject").dialog({ [..your code..] });
$("#closeDialog").click(function(){
$("#dialogReject").dialog( "close" );
})
您必须在 javascript 文件中监听一个事件。
首先为您的关闭按钮设置一个 id,我在这里使用 #closeButton :
$(document).ready(function() {
larghezza = '950px';
lunghezza = '470px';
lunghezza2 = '530px';
$("#dialogReject").dialog({
autoOpen: false,
//width:'335px',
width:'600px',
modal: true,
show: { effect: "blind", duration: 500 },
hide: { effect: "blind", duration: 500 }
});
$("#closeButton").click(function(){
$("#dialogReject").close();
});
});
因为Alex和kaz给出了答案 $("#dialogReject").close();
或者您可以使用通过 jquery 也可以创建的按钮
buttons: {Rifiuta: funstion()
{
rifiuta()
},
Annulla: function() {
$( this ).dialog( "close" );
}
供参考: https://jqueryui.com/dialog/#modal-confirmation
$( "#dialogReject" ).dialog({
autoOpen: open,
//width:'335px',
width:'600px',
modal: true,
show: { effect: "blind", duration: 500 },
hide: { effect: "blind", duration: 500 },
buttons: {Rifiuta: funstion()
{
rifiuta()
},
Annulla: function() {
$( this ).dialog( "close" );
}
}
});