Wie aus dem Titel möchte ich ein Popup-Fenster beim Klicken auf eine Schaltfläche ItemTemplate in einem GridView tun (1).(ASP.NET) Vorgehensweise: Klicken Sie in GridView, um ein Popup-Fenster mit einem anderen GridView zu öffnen
Das Pop-up-Fenster wird ein weiteres GridView (2) enthalten, und dieses enthält Informationen (aus Datenbank abgerufen), diese Informationen sind die gleichen wie GridView (1) und ich möchte nur die Daten aus dem Zeilenindex des Taste.
Dies sind einige Codes, die ich habe. JavaScript:
<script type="text/javascript">
$(function() {
$("[id*=btnShowPopup]").click(function() {
ShowPopup();
return false;
});
});
function ShowPopup() {
$("#dialog").dialog({
title: "GridView",
width: 450,
buttons: {
Ok: function() {
$(this).dialog('close');
}
},
modal: true
});
}
</script>
Gridview (2) Design:
<div id="dialog" style="display: none">>
<asp:GridView ID="gridviewpopup" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:ImageField DataImageUrlField="companyLogo" HeaderText="Company Logo" ControlStyleWidth="170" ControlStyle-Height="120" />
<asp:BoundField DataField="companyName" HeaderText="Company Name" />
<asp:BoundField DataField="companyInfo1" HeaderText="Background Information" />
</Columns>
</asp:GridView>
</div>
aspx.cs Datei-Codes:
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
this.BindGrid();
}
}
private void BindGrid()
{
string constr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand("SELECT * FROM companyList WHERE companyIndID ='" + Convert.ToString(ddlIndustry.SelectedValue) + "' AND companySectID='" + Convert.ToString(ddlSector.SelectedValue) + "'"))
{
using (SqlDataAdapter sda = new SqlDataAdapter())
{
cmd.Connection = con;
sda.SelectCommand = cmd;
using (DataTable dt = new DataTable())
{
sda.Fill(dt);
gridviewpopup.DataSource = dt;
gridviewpopup.DataBind();
}
}
}
}
}
protected void OnPageIndexChanging(object sender, GridViewPageEventArgs e)
{
gridviewpopup.PageIndex = e.NewPageIndex;
this.BindGrid();
ClientScript.RegisterStartupScript(this.GetType(), "Popup", "ShowPopup();", true);
}
Die oben genannten Codes, die ich nicht arbeite, und ich kann das Problem nicht mit ihm zu finden scheinen, oder ich kann etwas vergessen haben. Wenn Sie sich fragen, welcher Teil, das neue Fenster nicht erscheint. Danke.
Sie benötigen 'updatepanel', um' GridView' zu halten. Dann auf Knopf klicken, Popup öffnen und GridView über updatepanel refresh aktualisieren – Hemal