使用AJAX加载DOM时,Jquery.removeattr()的工作问题
我的DOM结构有点像这样:使用AJAX加载DOM时,Jquery.removeattr()的工作问题,jquery,html,ajax,Jquery,Html,Ajax,我的DOM结构有点像这样: <div id="main_common_listing_form"> <form id="frmlist" method='POST'> .... <select id="refine_search"> <option value="noValueSelected" selected="selected">Please select search key</opti
<div id="main_common_listing_form">
<form id="frmlist" method='POST'>
....
<select id="refine_search">
<option value="noValueSelected" selected="selected">Please select search key</option>
....
</select>
....
</form>
</div>
这在替换表单元素之前可以正常工作,但在替换表单元素之后,这并没有执行所需的操作。有人能帮我解决这个问题吗?
提前谢谢 试试这样的东西
$(document).on("change","#main_common_listing_form", function(){
$(this).find("#refine_search option[selected='selected']").removeAttr("selected");
})
原因:您在元素上应用了事件,该元素被新元素替换。所以新元素没有附加事件
因此,请使用附加事件。因此,新创建的元素将附加该事件
jQuery委托描述
根据一组特定的根元素,将处理程序附加到与选择器匹配的所有元素的一个或多个事件上(现在或将来)
创建一个单独的函数并在AJAX成功时调用它?
$(document).on("change","#main_common_listing_form", function(){
$(this).find("#refine_search option[selected='selected']").removeAttr("selected");
})