Я уже давно застрял в этом. Я занимаюсь серфингом stackoverflow для различных подходов к проблеме, но я все еще не могу заставить его работать. Он запускает код, но всплывающее окно не отображается. Он работает, когда я помещаю метод на кнопку вне поля обновления.Вызов JQueryUI из строки правил Gridview внутри Updatepanel
Я хочу, чтобы всплывающее окно отображалось, когда я нажимаю кнопку кнопки в gridview.
Вот мой код:
<script type="text/javascript">
function ShowPopup(message, title) {
$(function() {
$("#dialog").html(message);
$("#dialog").dialog({
title: title,
buttons: {
Close: function() {
$(this).dialog('close');
}
},
modal: true
});
});
};
</script>
<div id="dialog" style="display: none">
</div>
CodeBehind (я все мои разные подходы к моей проблеме в комментариях):
protected void grdWallmessages_RowCommand(object sender, GridViewCommandEventArgs e)
{
string message = "Meddelande borttaget från väggen!";
string title = " Borttagning";
ScriptManager.RegisterStartupScript(updwallmessages, updwallmessages.GetType(), Guid.NewGuid().ToString(), "ShowPopup('" + message + "','" + title + "');", true);
// ScriptManager.RegisterStartupScript(this, this.GetType(), "myalert", "alert('File already exists.');", true);
// Page.ClientScript.RegisterStartupScript(this.GetType(), "Popup", "ShowPopup('" + message + "','" + title + "');", true);
try
{
DAL dal = new DAL();
//Hämtar row index.
int rowNum = int.Parse(e.CommandArgument.ToString());
int id = Convert.ToInt32(grdWallmessages.Rows[rowNum].Cells[3].Text);
dal.delete_wallmessages(id);
// ClientScript.RegisterStartupScript(this.GetType(), "Popup", "ShowPopup('" + message + "','" + title + "');", true);
Response.Redirect("Profile.aspx");
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
Элемент GridView и UpdatePanel:
<asp:UpdatePanel ID="updwallmessages" runat="server">
<ContentTemplate>
<asp:GridView ID="grdWallmessages" runat="server" Height="159px" style="margin-top: 18px; margin-right: 0px;" Width="396px" OnSelectedIndexChanged="GridView1_SelectedIndexChanged" OnRowCommand="grdWallmessages_RowCommand" OnRowDataBound="grdWallmessages_RowDataBound">
<Columns>
<asp:ButtonField Text="Ta bort" />
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
Спасибо, он решил мою проблему! –
@ user3025336, это здорово :) –