Javascript 调用ajax后如何使按钮工作
在我的项目中,我使用Javascript 调用ajax后如何使按钮工作,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,在我的项目中,我使用seaStBt按钮打开搜索对话框 在确认包含搜索条件的搜索对话框后,我使用AJAX从数据库中获取数据,该数据成功地更新了idcCstmRId div 以下是js代码: <script> $(document).ready(function() { $('#idcCstmRId').on("dblclick","#bbs td",function(){......}); $('#seaStBt').click(function(){ $('#
seaStBt按钮
打开搜索对话框
在确认包含搜索条件的搜索对话框后,我使用AJAX从数据库中获取数据,该数据成功地更新了idcCstmRId div
以下是js代码:
<script>
$(document).ready(function()
{
$('#idcCstmRId').on("dblclick","#bbs td",function(){......});
$('#seaStBt').click(function(){
$('#dlgSea').dialog("open");
});
$('#seaBt').click(function(){
var seaSlt1 = $('#seaSlt1').val();
$.ajax({
dataType:'html',
type:"POST",
url:"get_ajax_csc.php",
data: {seaSlt1:seaSlt1},
success:function(data)
{
$('#idcCstmRId').html(data);
$('#dlgSea').dialog("destroy").remove();
}
});
});
......
}
</script>
$(文档).ready(函数()
{
$('idcCstmRId')。on(“dblclick”,“bbs td”,function(){……});
$('seaStBt')。单击(函数(){
$('dlgSea')。对话框(“打开”);
});
$('#seaBt')。单击(函数(){
var seaSlt1=$('#seaSlt1').val();
$.ajax({
数据类型:'html',
类型:“POST”,
url:“get_ajax_csc.php”,
数据:{seaSlt1:seaSlt1},
成功:功能(数据)
{
$('#idccstmid').html(数据);
$(“#dlgSea').dialog(“Detroy”).remove();
}
});
});
......
}
以下是html代码:
<div id="firDiv">
<?php
echo '<table border=1px style="width:100%" id="bbs">';
.......
?>
<div class="main_title" id="mnTlt">
<input type="button" id="seaStBt" value="search">
</div>
<div id="dlgSea" >
<input type="submit" value="confirm" id="seaBt" />
</div>
<div class="idcCstmRqst" id="idcCstmRId"></div>
下面是get_ajax_csc.php代码:
if(isset($_POST['seaSlt1']))
{
include("DB.php");
$seaOne=$_POST['seaSlt1'];
echo '<table border=1px style="width:100%" id="bbs">';
......
}
if(isset($\u POST['seaSlt1']))
{
包括(“DB.php”);
$seaOne=$_POST['seaSlt1'];
回声';
......
}
问题是在从数据库中获取数据之前,seaStBt按钮
显示搜索对话框。但是在获取数据后,idccstrid div
成功更新后,seaStBt按钮
不再工作。单击seaStBt按钮
后,搜索对话框不会显示
也许AJAX更改了DOM,但是seaStBt按钮
看到的却没有看到这些更改
我不知道,谁能帮我?问题可能是
.remove()
方法。jQuery文档说
.remove()
将元素从DOM中移除,因此您正在移除#dlgSea
..您是说要在返回结果后从#seaStBt中移除click事件吗?如果是,我相信您可以使用以下方法来完成此操作:
$(“#seaStBt”).unbind('click');
相反,返回结果后,#seaStBt继续单击。我使用$('#dlgSea').dialog(“destroy”);但不幸的是,#seaStBt也不显示任何内容。是否使用jQueryUI?如果是这样,.dialog(“destroy”)
会将元素返回到其初始状态(jQueryUI文档:)。因此,您必须重新初始化对话框。您不能简单地使用。对话框(“关闭”)
?。对话框(“关闭”)工作正常,非常感谢!!