2012-07-19 4 views
1

제 질문은 이해하기가 어려울 것 같지만 꽤 간단합니다. 솔루션도 꽤 간단합니다.ASP.NET Gridview 텍스트 상자에 Gridview 텍스트 상자를 추가하십시오. (gridview 편집시)

나는 편집 및 업데이트 할 수있는 하나의 Gridview를 보유하고 있습니다. 열을 ReadOnly = "True"로 설정하면 편집을 클릭하면 기본 텍스트 상자 컨트롤이 나타납니다 ...

Gridview의 편집 단추를 클릭하여 해당 텍스트 상자에서 값을 동적으로 만들 수 있습니다. , 그게 다 좋다 ...

내 질문은 : 그 동적으로 텍스트 상자에 편집 단추를 클릭하면 gridview 내부에 클릭하면 자바 스크립트 코드를 추가합니다.

이 텍스트 상자를 클릭하는 날짜 선택기 쇼에 자바 스크립트 코드입니다 : 내가 동적으로 생성 된 내 gridview에 편집 텍스트 상자의 이름을 알고 싶어 먼저 코드를 텍스트 상자에 이름을 넣어 대신에, 이제

<head runat="server"> 

<link rel="Stylesheet" type="text/css" href="css/jquery.datepick.css" /> 
<script type="text/javascript" src="js/jquery.datepick.js"></script> 

<script type="text/javascript" language="javascript"> 
    $(function() {  
     $('#Textbox_Name').datepick({ dateFormat: 'dd/mm/yyyy' });    
    }); 
</script> 
</head> 

다음이 텍스트 상자

답변

1

에 날짜 선택기를 보여 RowCreated 이벤트 처리 : 여기에 쉬운 방법이 EDI에 CSS 클래스 이름을 추가하는 것입니다

protected void grid_RowCreated(object sender, GridViewRowEventArgs e) 
{ 
    if (e.Row.RowState == DataControlRowState.Edit) 
    { 
     var textBox = e.Row.FindControl("myTextBox") as TextBox; 
     ClientScript.RegisterStartupScript(this.GetType(), "datepick", 
     "$(function() { $('#" + textBox.ClientID + "').datepick({ dateFormat: 'dd/mm/yyyy' }); })", true); 
    } 
} 
+0

그러나 단 하나의 행은 당신에게 너무 많은 Amiram Korach 감사 –

+0

편집 모드에있을 수 있습니다, 당신은 내 일했다! Solved – B1GB0Y

+0

@ B1GB0Y 당신을 도울 답변을 수락하고 투표하십시오. – Aristos

0

이 같은 일을 광산을 가지고 : 토르 다음은 업데이트 패널을 포함하여 그것에 대한 해결책을 가지고이 문제

<script type="text/javascript" language="javascript"> 
    $(function() { 
     $('.className').datepick({ dateFormat: 'dd/mm/yyyy' }); 
    }); 
</script> 

참고로이 클래스를 모두 편집자에 datepick을 적용

(RowDataBound 이벤트)

if (e.Row.RowType == DataControlRowType.DataRow) 
{ 
    TextBox tbOne = e.Row.FindControl("txtMyTextBox") as TextBox; 
    if (tbOne != null) 
    { 
     string js = "$(function() { $('#" + tbOne.ClientID + "').datepicker(); });"; 
     ClientScript.RegisterStartupScript(this.GetType(), "DatePickJS_" + Guid.NewGuid().ToString("N"), js, true); 
    } 
}