我正在创建一个用户信息编辑对话框,该对话框使用获取编辑用户信息,$.post
但由于未使用任何 HTML 元素初始化对话框,因此我无法关闭此对话框。
我正在尝试$('#editUser').dialog('close')
,但它不会工作。
这是主体:
<div id='userInfo'>
<div class='user'>
<span class='userId'>1</span>
<span class='userName'>John</span>
</div>
<div class='user'>
<span class='userId'>2</span>
<span class='userName'>Jane</span>
</div>
这是用于创建对话框的脚本:
$(function() {
$('.user').click(function() {
var uid = $(this).find('span.userId').html();
$post('/e-val/user/edit.php', {id: uid}, function(html) {
$(html).dialog();
});
});
$('body').on('click', '#closeEditDialog', function() {
$('#editUser').dialog('close')
});
});
对话框按预期打开,但没有按预期关闭。
这是 ajax 脚本返回的对话框的 HTML。
<div id='editUser'>
<table>
<tr>
<td>Username</td>
<td><?php echo $user['name'] ?></td>
</tr>
<tr>
<td>Email</td>
<td><?php echo $user['email'] ?></td>
</tr>
<tr>
<td colspan='2'>
<input type='button' id='closeEditDialog' value='close' />
</td>
</tr>
</table>
</div>
我该怎么做才能关闭它?我可以$('#editUser').remove()
用来删除对话框,但我需要关闭它而不是删除它。