私は次のHTMLコードを持っています:-
<telerik:RadSplitter ClientIDMode="Static" ID="RadSplitter1" runat="server" PanesBorderSize="0" BorderSize="0"
Width="100%" Height="100%" Orientation="Vertical" CssClass="radSplitterCss" HeightOffset="98">
<telerik:RadPane ID="RadPane2" runat="server" Width="293px" Height="100%" BackColor="white"
CssClass="radLeftPane">
<uc1:UCMainMenu ID="UCMainMenu1" runat="server" />
</telerik:RadPane>
<telerik:RadSplitBar ID="RadSplitbar2" runat="server" Width="1%" CollapseMode="Forward" CssClass="radSplitBar" >
</telerik:RadSplitBar>
<telerik:RadPane ID="RadPane3" runat="server" BackColor="white" CssClass="radRightPane" >
<div class="mainContent">
<asp:ContentPlaceHolder ClientIDMode="Static" runat="server" ID="MainContent" />
</div>
</telerik:RadPane>
</telerik:RadSplitter>
UCMainMenu のコードは次のとおりです。
<asp:UpdatePanel runat="server" ID="MainMenuUP" UpdateMode="Conditional">
<ContentTemplate>
<div id="mainMenu">
<telerik:RadPanelBar runat="server" ID="RadPanelBar1" Width="100%" Height="100%" OnItemDataBound="ItemDataBound" >
<ExpandAnimation Type="None" />
</telerik:RadPanelBar>
</div>
</ContentTemplate>
</asp:UpdatePanel>
これで、検索を行うための JQuery がいくつかあり、ページを更新せずにメニューをフィルタリングすることになっています (そのため、UpdatePanel を含めました)。
$("#reports_textSearch").keyup(function () {
var textLength = $(this).val().length;
delay(function () {
if (textLength == 0) {
emptySearchString();
}
if (textLength > 2) {
var args = {
reportName: document.getElementById('reports_textSearch').value
};
doSearchString(args);
}
}, 1000);
});
function doSearchString(args) {
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "Dashboard.aspx/FetchReports",
data: JSON.stringify(args),
dataType: "json",
success: function (data) {
__doPostBack('#MainMenuUP', data.d);
},
error: function (data) {
}
});
}
問題は、Firefox では初めて更新されますが、その後は更新されなくなりますが、IE では常にページ全体が更新されます。
どうすればこれを修正できますか?
あなたの助けと時間をありがとう
- - - - - - - - - -アップデート - - - - - - - - - - - - - - - -------------------------- 問題の 1 つが見つかりました。変更中:-
//__doPostBack('#MainMenuUP', data.d);
__doPostBack('<%= MainMenuUP.ClientID %>', data.d);
ページの更新がなくなりました。ただし、別の JQUERY コードは現在機能していません:-
$('.rpItem').on("click", "img", function (e) {
var text = $(this).siblings('span.rpText').text();
//e.preventDefault();
//e.stopPropagation();
var args = {
reportName: text
};
$.ajax({
type: "POST",
url: "Dashboard.aspx/AddToFavourites",
data: JSON.stringify(args),
contentType: "application/json;charset=utf-8;",
success: function (data) {
//__doPostBack('#MainMenuUP', text);
__doPostBack('<%= MainMenuUP.ClientID %>', text);
},
error: function () {
}
});
});
まだこの問題を解決しようとしています