나는 라벨 및 드롭 다운에 일부 자바 스크립트가 포함 된 일련의 레이블과 드롭 다운이 포함 된 테이블 컨트롤을 즉석에서 만듭니다. .동적 컨트롤을 추가 할 때 현재 컨텍스트에서 ContentPlaceHolder의 ClientID를 확인하십시오.
Dim dd As New DropDownList
Dim ds As System.Data.DataTable = GetTable("EmployeePosition")
Dim prefix As String = "Position"
dd.ID = prefix & i
dd.DataSource = ds
dd.DataValueField = "PositionID"
dd.DataTextField = "PositionName"
dd.Attributes.Add("onchange", "checkDuplication(this,'" & prefix & "');")
dd.DataBind()
자바 스크립트 함수 "onchange를 '는 드롭 다운 중 임의의 값이 동일한 경우 프리픽스와 검사로 시작하는 모든 드롭을 통해 제어 루프.
이 테이블은 내 마스터 페이지에있는 ContentPlaceHolder 컨트롤에 포함 된 PlaceHolder 컨트롤에 추가됩니다. 이 자바 스크립트를 포함 특히, 마스터 페이지 및 ContentPlaceHolders에 배치 할 때
Master_Content1_Position1
내가 reoccuring이 문제는 컨트롤의 이름을 자동으로 지정합니다.
제가 지금까지 생각해 낸 최고의 해결책은 PlaceHolder를 포함하고있는 ContentPlaceHolder를 찾고 ClientID를 검색 한 다음 해당 값을 테이블 작성자에게 전달하는 것입니다.
Dim cph As ContentPlaceHolder = Me.Master.FindControl("Content1")
Dim tbl As Table = New PositionTable(cph.ClientID).ToTable
PlaceHolder1.Controls.Add(tbl)
그래서 나는 가리 키도록 자바 스크립트 기능을 앞에 내 표 작성자에게이 값을 전달할 수 있습니다 현재의 ContentPlaceHolder 컨트롤 또는 자리에서 무엇을 결정하고, 클라이언트 ID 또는에서 UniqueID를 반환하는 방법이 있나요 요소 ID를 사용하여 오른쪽 컨트롤? 가급적이면 기준 값으로 채워지는 PlaceHolder 또는 Control을 사용합니까?
감사합니다.