버튼을 누를 때 팝업되는 jQuery 대화 상자가 있습니다. 거기에 내 데이터베이스에서 결과를 포함하는 GridView 있습니다. 내가 검색 한 결과를 표시하도록 GridView를 만들고 싶습니다. 따라서 asp:textbox
과 asp:button
을 추가 했으므로 버튼을 누르면 데이터베이스와 연결 한 다음 GridView에 결과를 표시하는 기능이 호출됩니다. 그래서 기본적으로, jQuery가 터지면 빈 GridView (또는 none)가 표시되어야합니다. 그런 다음 무언가를 검색 할 때 결과를 표시해야합니다.데이터베이스에서 검색하고 jQuery 대화 상자가있는 GridView에 표시
<div id="ViewPlaces">
<asp:TextBox ID="viewPlaceTextbox" runat="server" placeholder="Search..." />
<asp:Button ID="viewPlaceBtn" OnClick="getSearchedPlace" runat="server" Text="Search for place" />
<asp:GridView ID="GridView1" AllowPaging="true" GridLines="None" CssClass="mGrid" PagerStyle-CssClass="pgr" AlternatingRowStyle="alt" runat="server" AllowSorting="True"
AutoGenerateColumns="False"
Width="750px"
CausesValidation="False" ShowHeaderWhenEmpty="true" ShowHeader="true">
<Columns>
<asp:BoundField DataField="place_id" HeaderText="Id" ReadOnly="True" />
<asp:BoundField DataField="place_name" HeaderText="Name" />
<asp:BoundField DataField="place_city" HeaderText="City" />
<asp:BoundField DataField="place_land" HeaderText="Land" />
<asp:BoundField DataField="place_desc" HeaderText="Description" />
</Columns>
</asp:GridView>
</div>
는 jQuery 코드입니다 : 여기 내 main.aspx 코드
내 C# 코드에서$('#ViewPlaces').dialog(dialogOpts5);
$.fx.speeds._default = 500;
$(function() {
$("#ViewPlaces").dialog({
autoOpen: false,
show: "blind",
hide: "explode",
});
$("#viewallplaces").click(function() {
$("#ViewPlaces").dialog("open");
return false;
});
});
문제는 그 전에서 결과를 가져 오기위한 함수를 호출하지 않는 경우 Page_Load
에있는 데이터베이스를 열면 jQuery 대화 상자를 여는 버튼을 누를 때 GridView가로드되지 않습니다. 그렇지 않으면, 기능은 다음과 같습니다 :
protected void getPlaces()
{
List<Place> pl = new List<Place>();
pl = functions.getPlaces();
GridView1.DataSource = pl;
GridView1.DataBind();
}
그리고 getPlaces()
기능은 장소의 목록을 반환합니다. 그것은 문제가되지 않으며 작동하며 테스트를 마쳤습니다.
에 HTML을 삽입 할 수 있습니다. 더 설명해 주시겠습니까? – Apostrofix
서버 측 코드에서 원하는 효과를 얻으려면 gridview (및 가능하면 updatepanel)를 사용하십시오. 또는 기본 HTML 및 jquery를 사용하여 html 테이블을 웹 메서드 또는 일반 webforms 처리기와 함께 렌더링하여 데이터베이스를 쿼리하고 데이터를 JSON 객체로 반환 할 수 있습니다. 당신이 원하지 않는 것은 jquery를 사용하여 서버를 호출하고 서버가 그리드 뷰를 렌더링하도록하는 것입니다. –