2017-03-09 99 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(); 
}