2014-09-27 2 views
0

GridView의 첫 번째 열에 편집 단추와 삭제 단추가있는 경우 GridView의 링크 삭제 단추를 참조하는 방법은 GridView의 AutoGenerateDeleteButton 속성이 true입니다. 나는 그것을 다음과 같이 언급하고있다 :삭제 단추에 대한 참조

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) 
    { 
     if (e.Row.RowState == DataControlRowState.Normal || e.Row.RowState == DataControlRowState.Alternate) 
      { 
       ((LinkButton)e.Row.Cells[0].Controls[0]).Attributes["onclick"] = "if(!confirm('Are you sure to delete this row?'))return false;"; 
      } 
     } 
    } 

코드는 정상적으로 실행되지만 GridView1에서 레코드를 삭제할 때 코드는 확인되지 않고 레코드를 삭제한다. 내가 어디로 잘못 가고 있는지 아는 어떤 생각?

+0

WinForms 또는 WPF? 질문에 적절하게 태그를 답니다. – RenniePet

+0

생성 된 HTML을 단 하나의 행으로 추가 할 수 있습니까? – ekad

+0

@RenniePet WinForms. –

답변

0

나는 내 시스템에서 디버깅을 시도하고 e.Row.Cells [0] .Controls를 조사 할 때 삭제 버튼이 색인 2에 있다는 것을 발견 했으므로 delete js validation을 첨부 할 수 있습니다.

((LinkButton)e.Row.Cells[0].Controls[2]).Attributes["onclick"] = "if(!confirm('Are you sure to delete this row?'))return false;"; 

한 가지 제안, 당신은 대신의 RowState의,이 검사를 추가 할 수 있습니다.

 if(e.Row.RowType == DataControlRowType.DataRow) 
       { 
} 
+0

코드는 로컬에서 작동하지만 서버에 게시 한 후 서버에서 작동하지 않습니다. 왜 그런가? –

+0

거기서 디버그 할 수 있습니까? 그냥 (response.write ((LinkButton) e.Row.Cells [0] .Controls [2]).) 텍스트와 respons.end를 참조하십시오. –

관련 문제