2011-12-07 2 views
2

일부 SharePoint 양식 필드를 토글하도록 작성한 스크립트가 있습니다. 페이지가로드 될 때 숨길 수있게되었지만 formfield 컨트롤의 ID를 어떻게 고정할지 모르기 때문에 표시 할 수 없습니다.jQuery 용 SharePoint 양식 필드의 ID를 얻으십시오.

요청 유형 행에 ID를 추가하는 방법에 대해 생각해 보았습니다. 그러나 변경 자체를 차지하는 것은 tr이 아니라 컨트롤 자체이기 때문에 어떤 것이 좋을지는 의심 스럽습니다. 어떤 제안?

실제로 필드 이름 속성을 SharePoint:FormField으로 가져 오는 방법을 알아낼 수만 있다면 그 방법이 좋습니다.

<script type="text/javascript"> 
$(document).ready(function(){ 

    $("tr.anon").hide(); 
    $("tr.reqDet").hide(); 

    $("#ff5{$Pos}").change(function(){ 
    $(".anon").toggle(); 
    }); 

    $("#ff3{$Pos}").change(function(){ 
    $("#ff4{$Pos}").toggle(); 

    }); 
}); 
</script> 

<tr> 
    <td width="190px" valign="top" class="ms-formlabel"> 
     <H3 class="ms-standardheader"> 
      <nobr>Request Type<span class="ms-formvalidation"> *</span></nobr> 
     </H3> 
    </td> 
    <td width="400px" valign="top" class="ms-formbody"> 
     <SharePoint:FormField runat="server" id="ff3{$Pos}" ControlMode="New" FieldName="requestType" __designer:bind="{ddwrt:DataBind('i',concat('ff3',$Pos),'Value','ValueChanged','ID',ddwrt:EscapeDelims(string(@ID)),'@requestType')}"/> 
     <SharePoint:FieldDescription runat="server" id="ff3description{$Pos}" FieldName="requestType" ControlMode="New"/> 
    </td> 
</tr> 
<tr class="reqDet"> 
    <td width="190px" valign="top" class="ms-formlabel"> 
     <H3 class="ms-standardheader"> 
      <nobr>Request Details</nobr> 
     </H3> 
    </td> 
    <td width="400px" valign="top" class="ms-formbody"> 
     <SharePoint:FormField runat="server" id="ff4{$Pos}" ControlMode="New" FieldName="requestDetails" __designer:bind="{ddwrt:DataBind('i',concat('ff4',$Pos),'Value','ValueChanged','ID',ddwrt:EscapeDelims(string(@ID)),'@requestDetails')}"/> 
     <SharePoint:FieldDescription runat="server" id="ff4description{$Pos}" FieldName="requestDetails" ControlMode="New"/> 
    </td> 
</tr> 

감사합니다.

답변

2

펑키 찾고있는 신분증입니다. 유효합니까? 그럼 그들이 경우에 당신은 자바 스크립트/jQuery를에서 양식 필드 컨트롤 (또는 서버 측 컨트롤)에 액세스하기 위해이 방법을 사용해야합니다 아래와 같이 선택 JQuery와의

var myFormField = $("#<%= #ff5{$Pos}.ClientID %>"); 
+0

빠른 답장을 보내 주셔서 감사합니다. 다행히 ... 아마 ID를 얻는 것은 내가 가고 싶은 방식이 아닙니다. – jg100309

+0

사실, 어떻게 SharePoint의 fieldname 속성을 얻을 수 있습니까 : FormField? – jg100309

+0

'ClientID'를'FieldName'으로 대체하십시오. '<% %>'은 코드 세그먼트를 정의합니다. –

0

사용하는 여러 가지 방법을. 심지어 외부 자바 스크립트 파일이있을 때 작동합니다.

var stDateField = $(":input[title='Start Time']").val(); 
관련 문제