문제

SP 2010의 멋진 새로운 기능이 사용자 정의 유효성 검사 수식과 모든 열의 오류 메시지를 지정할 수 있습니다.

SharePoint Designer의 "새 목록 양식 만들기 -> 새 항목 양식 작성"을 사용하여 사용자 정의 양식을 사용하여 기본 NewForm.aspx를 사용자 정의 양식으로 바꾸면 작동하지 않습니다. ListFormWebPart 대신 선택한 콘텐츠 형식의 모든 필드에 대해 FormField 컨트롤을 지정한 ASPX를 만듭니다.

방금 생성 된 사용자 정의 양식의 모든 필드의 코드는 다음과 유사합니다.

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

"새 목록 양식 작성 -> 새 항목 양식"양식 "양식 (새 SharePoint 2010) 수식 유효성 검사가 작동하지 않는 것입니다. 저장 스테이지에서만 유효성 검사를 전달합니다. 오류 페이지.

은 폼 필드 제어와 함께 구성 할 수 있거나 사용자 정의 (listformwebpart) 항목 페이지를 사용할 때이 새로운 SP2010 유효성 검사 메커니즘을 사용하거나 사용자 정의 GUI를 작성해야합니까? 이 경우 유효성 검사?

감사합니다!

도움이 되었습니까?

해결책

문제는 FormField 컨트롤 자체가 아니지만 DataFormWebPart 웹 파트 가이 필드를 사용하고있었습니다. 2 가지 문제가 있습니다.

  1. 오징지를 사용하여 필드는 필드의 이러한 값이있는 항목이 이미있는 메시지가 이미있는 메시지를 보여주는 웹 파트가 올바르게 처리 해야하는 예외를 throw합니다.그러나 dataFormWebPart는이 예외를 처리하지 않습니다. 기본 ListFormWebPart는 수행합니다.사용자 정의 유효성 검사 공식과 유사합니다.
  2. SharePoint 필드 컨트롤은 소유의 웹 파트가 유효성을 검사하고 적절한 메시지 (예 : 필수 조회 필드)를 표시 할 수 있도록 Ivalidator 인터페이스를 구현하지만 DataFormWebPart는 그렇게하지 않습니다 (ListFormWebPart는 해당)
  3. 를 수행하지 않습니다.
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top