여러 업데이트 패널이 포함 된 페이지에서 작업하고 있습니다. 보통은 updatemode='conditional'
으로 설정하지만, 업데이트 패널 중 하나에서 데이터를 업데이트하면 다른 모든 업데이트 패널을 업데이트해야합니다. 그렇지 않으면 방화 광구의 콘솔 창에 오류가 발생하고 페이지가 중단됩니다.이 문제를 해결하려면 어떻게해야합니까? 이 문제에 대한 자세한 내용은여러 업데이트 패널의 문제
은 위의 이미지는 두 개의 업데이트 패널을 간단한 페이지를 나타냅니다. updatepanel1
의 첫 번째 gridview는 updatemode='conditional'
입니다.
나머지는 updatepanel2
이고 updatemode='conditional'
입니다.
시나리오는 다음과 같습니다. 사용자가 첫 번째 gridview에서 하루를 선택한 다음 jquery에서 __doPostBack('btnRefresh', '');
을 사용하여 데이터를 두 번째 gridview에 채 웁니다.
참고 : id="btnRefresh"
이있는 단추는 두 번째 업데이트 패널에 있습니다.
도와주세요.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Appointments.aspx.cs" Inherits="Appointments" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">`enter code here`
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="js/jquery-1.10.2.min.js" type="text/javascript"></script>
<script src="js/FQuery.js" type="text/javascript"></script>
<link href="style/style-en.css" rel="stylesheet" type="text/css" />
<link href="style/ModalStyle-mini.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
var cells;
var isAdd = 1;
$(document).ready(function() {
DoWork();
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(requestHandler);
});
function requestHandler(sender, args) {
DoWork();
}
function DoWork() {
$("#gvDays .row").click(function() {
$("#gvDays .row").removeClass("darkblue");
$(this).addClass("darkblue");
$("#txtPeriod").val("");
$("#txtDay_det_id").val("");
cells = $(this).find("td");
$("#txtDay_id").val($(cells[0]).text());
__doPostBack('btnRefresh', '');
});
$("#gvDayDet .row").click(function() {
$("#gvDayDet .row").removeClass("darkblue");
$(this).addClass("darkblue");
cells = $(this).find("td");
$("#txtDay_det_id").val($(cells[0]).text());
$("#txtTimeFrom").val($(cells[2]).text());
$("#txtTimeTo").val($(cells[3]).text());
$("#txtPeriod").val($(cells[4]).text());
__doPostBack('btnDaysDet', '');
});
};
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="true">
</asp:ScriptManager>
<div id="catNewsTab">
<asp:UpdatePanel runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="gvDays" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:BoundField DataField="day_id" HeaderText="Day No." />
<asp:BoundField DataField="day_name" HeaderText="Day Name" />
</Columns>
<HeaderStyle CssClass="gray" />
<RowStyle CssClass="blue1 row" />
<SelectedRowStyle CssClass="darkblue row" />
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<asp:UpdatePanel ID="upDaysDet" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div>
<asp:Button ID="btnSaveDayDet" Text="Save" runat="server" OnClick="btnSaveDayDet_Click" />
<asp:Button ID="btnUpdateDayDet" Text="Update" runat="server" OnClick="btnUpdateDayDet_Click" />
<asp:Button ID="btnDeleteDayDet" Text="Delete" runat="server" OnClick="btnDeleteDayDet_Click" />
<asp:TextBox ID="txtDay_id" runat="server" CssClass="hide" />
<asp:Button ID="btnRefresh" runat="server" CssClass="hide" OnClick="btnRefresh_Click" />
<asp:Button ID="btnDaysDet" runat="server" CssClass="hide" OnClick="btnDaysDet_Click" />
</div>
<div style="height: 326px;" class="scroll scrollsmall">
<asp:GridView ID="gvDayDet" runat="server" AutoGenerateColumns="false" EmptyDataText="No Results Found">
<Columns>
<asp:BoundField DataField="day_det_id" HeaderText="day_det_id" />
<asp:BoundField DataField="day_id" HeaderText="day_id" />
<asp:BoundField DataField="time_from" HeaderText="time_from" />
<asp:BoundField DataField="time_to" HeaderText="time_to" />
</Columns>
<HeaderStyle CssClass="gray" />
<RowStyle CssClass="blue1 row" />
<SelectedRowStyle CssClass="darkblue row" />
<EmptyDataRowStyle CssClass="empty" />
</asp:GridView>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</form>
</body>
</html>
aspx 코드, 특히 업데이트 패널 영역을 표시 할 수 있습니까? –