Привет! У меня есть элемент управления поиском, который отображается только при нажатии на тег привязки для отображения элемента поиска.В то же время я меняю значок фильтра, размещенный внутри тега привязки, чтобы обновить значок, чтобы закрыть значок.Я добился этого с помощью метода toggleClass.Моя проблема заключается в том, что когда панель обновления обновляет свое содержимое или происходит обратная передача, значок сбрасывается на первый значок фильтра, что не соответствует логике его собственного примечания о существовании, что я добавил все эти элементы управления в панель обновления asp.net.Вот мой фрагмент кода.
<asp:UpdatePanel runat="server" ID="Up1">
<ContentTemplate>
<div class="row">
<div class="col-lg-4">
</div>
<div class="col-lg-4">
</div>
<div class="col-lg-4 text-right">
<a id="SearchControl" href="#"><i id="SearchIcon" class="fa fa-filter"></i> Search</a>
</div>
</div>
<div id="filterControlDiv" class="row">
<div class="col-lg-12 bg-secondary" style="height: 150px;">
</div>
</div>
<div class="row">
<div class="col-lg-12">
<asp:GridView runat="server" ID="grdAirportList" AllowPaging="true" PageSize="5" AutoGenerateColumns="true">
</asp:GridView>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
и используемый скрипт:
[![<script>
$(function () {
InitialSearch();
$('#SearchControl').click(function ()
{
$('#filterControlDiv').slideToggle();
$('#SearchIcon').toggleClass("fa-filter fa-times");
});
});
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_endRequest(function () {
$('#SearchControl').click(function () {
$("#filterControlDiv").slideToggle();
$('#SearchIcon').toggleClass("fa-filter fa-times");
});
});
function InitialSearch() {
$('#filterControlDiv').hide();
}
</script>][1]][1]
Заранее спасибо.