2017-03-09 102 views
0

使用模式,这是我的引导模式在gridview的行编辑C#

<div class="modal fade" id="myModal"> 
      <div class="modal-dialog"> 
       <div class="modal-content"> 
        <div class="modal-header"> 
         <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 
          <span aria-hidden="true">&times;</span></button> 
         <h4 class="modal-title"> 
          </h4> 
        </div> 
        <div class="modal-body"> 
         <asp:Label ID="lblMessage" runat="server" /> 
        </div> 
        <div class="modal-footer"> 
         <button type="button" class="btn btn-default" data-dismiss="modal"> 
          Close</button> 
         <button type="button" class="btn btn-primary"> 
          Save changes</button> 
        </div> 
       </div> 
       <!-- /.modal-content --> 
      </div> 
      <!-- /.modal-dialog --> 
     </div> 

我想打开按钮点击模式,

按钮是在我的gridview的项目模板,

我按钮看起来像这样

<ItemTemplate> 
      <asp:LinkButton ID="btnedit" runat="server" data-toggle="modal" data-target="#myModal" CommandName="Edit" Text="Edit" CssClass="btn btn-warning" Width="100%"></asp:LinkButton> 
</ItemTemplate> 

现在我已经创建了一个行编辑的保护无效方法,

它看起来像这样

protected void dgvEdit_RowEditing(object sender, GridViewEditEventArgs e) 
     { 
      dgvEdit.EditIndex = e.NewEditIndex; 
      int index = e.NewEditIndex; 
      LoadGridTask("EDIT", Session["CurrentUser"].ToString(), Session["TaskID"].ToString()); 

      Label taskinmodal = dgvEdit.Rows[index].FindControl("lblTaskName")as Label; 
      Response.Write(taskinmodal.Text); 

      ClientScript.RegisterStartupScript(this.GetType(), "alert", "ShowPopup();", true); 
      this.lblMessage.Text = taskinmodal.Text; 
     } 

的问题是,当我在我的模式和设定目标ID的代码添加到我的模式,

dgvEdit_RowEditing代码不执行,

我想在我的模式中添加我的gridview行的值,我认为这是阻止我的模式(data-toggle="modal" data-target="#myModal")执行ting CommandName="Edit"

我需要做什么?

回答

0

尝试使用rowCommand而不是使用 'dgvEdit_RowEditing' 在你的GridView中添加

OnRowCommand="dgvEdit_RowCommand" 

,改变你的方法( 'dgvEdit_RowEditing')这样,

protected void dgvEdit_RowCommand(object sender, GridViewCommandEventArgs e) 
{ 
    if(e.CommandName == "Edit") 
    { 
    dgvEdit.EditIndex = e.NewEditIndex; 
     int index = e.NewEditIndex; 
     LoadGridTask("EDIT", Session["CurrentUser"].ToString(), Session["TaskID"].ToString()); 

     Label taskinmodal = dgvEdit.Rows[index].FindControl("lblTaskName")as Label; 
     Response.Write(taskinmodal.Text); 

     ClientScript.RegisterStartupScript(this.GetType(), "alert", "ShowPopup();", true); 
     this.lblMessage.Text = taskinmodal.Text; 
    } 
    } 

希望工程! !

0

正如你指出拆除此数据切换=“莫代尔”数据目标=“#myModal”,让dgvEdit_RowCommand执行。在你dgvEdit_RowCommand方法

protected void dgvEdit_RowCommand(object sender, GridViewCommandEventArgs e) 
{ 
    if(e.CommandName == "Edit") 
    { 
    dgvEdit.EditIndex = e.NewEditIndex; 
     int index = e.NewEditIndex; 
     LoadGridTask("EDIT", Session["CurrentUser"].ToString(), Session["TaskID"].ToString()); 
    Label taskinmodal = dgvEdit.Rows[index].FindControl("lblTaskName")as Label; 
    Response.Write(taskinmodal.Text); 

    ClientScript.RegisterStartupScript(this.GetType(), "alert", "ShowPopup();", true); 
    this.lblMessage.Text = taskinmodal.Text; 
} 

}

在showpopup()函数,请致电

function ShowPopup(){ 
$("#myModal").modal(); 
}