我有一个用户的gridview。
我想要发生的事情:
当有人想要编辑用户的详细信息时,他们会点击相关的gridview按钮,并打开一个Jquery模式对话框,其中预先填充了用户信息。
剧本:
$(document).ready(function () {
//setup new User dialog
$('#divEditUser').dialog({
autoOpen: false,
draggable: true,
width: 650,
modal: true,
title: "Edit User",
open: function (type, data) {
$(this).parent().appendTo("form");
}
});
的GridView:
<asp:TemplateField ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:Button ID="btnEdit" CommandArgument='<%# Eval("UserID") %>' CommandName="EditUser" Text="Edit User" runat="server" UseSubmitBehavior="false"/>
</ItemTemplate>
</asp:TemplateField>
自定义用户控件:
<div id="divEditUser" title="Edit user">
<asp:HiddenField ID="hiddenUserID" runat="server" />
<cac:UserDetails runat="server" ID="UserDetails" />
<asp:Button id="btnSaveChanges" Text="Save Changes" runat="server" />
</div>
守则背后:
protected void gridUsers_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "EditUser")
{
Button btn = (Button)e.CommandSource; // the button
GridViewRow myRow = (GridViewRow)btn.Parent.Parent; // the row
GridView myGrid = (GridView)sender; // the gridview
string ID = myGrid.DataKeys[myRow.RowIndex].Value.ToString();
UserDetails.PopulateUser(Convert.ToInt16(ID));
THIS IS WHERE I WANT TO OPEN THE DIALOG
}
}
我的问题是对话框出现&amp;在回发上消失,或者它不会显示,或者它将显示在弹出窗口(未填充)和窗体上(已填充)
我试过了ScriptManager.RegisterStartupScript
我还尝试了几种OnClientClick
方法。
我尝试过更新面板,没有更新面板
但又是&amp;再一次,没有运气。
有没有人真正实现过这个目标? ...你愿意分享这些代码吗?
答案 0 :(得分:0)
在jquery对话框函数中使用return false语句