首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FormField忽略列验证公式

FormField忽略列验证公式
EN

Stack Overflow用户
提问于 2010-07-12 17:08:49
回答 1查看 1.9K关注 0票数 1

在SP 2010中有一个很酷的新特性,您可以为任何列指定一个自定义验证公式和一个错误消息。

由于某些原因,当您使用自定义表单替换列表的默认NewForm.aspx时,使用SharePoint designer的"Create -> New“无法工作。它创建一个aspx,其中它为所选内容类型的每个字段放置一个FormField控件,而不是ListFormWebpart,后者迭代和呈现页面上没有显式提到的每个字段。

刚刚创建的自定义表单上的每个字段的代码类似于以下内容(仅用于说明)

代码语言:javascript
复制
<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>

问题是,使用"Create -> New Item Form“表单,(NewSharePoint2010)公式验证无效:它仅在保存阶段失败时才通过表单上的验证,从而导致错误页面。

在使用自定义(非ListFormWebpart)项页时,它是否以任何方式向FormField控件吐露,或者以任何其他方式获得这种新的sp2010验证机制的好处,还是在这种情况下我必须编写自定义的sp2010验证?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-07-30 17:41:03

问题不在于FormField控件本身,而在于我使用这些字段的DataFormWebPart web部件。有两个问题:

  1. 和uninquness字段抛出一个异常,该异常应该由WebPart正确处理,显示具有该字段值的项已经存在的消息。但是DataFormWebPart不处理这个异常,而默认的ListFormWebPart处理。它类似于自定义验证formula.
  2. SharePoint字段控件实现IValidator接口,以便拥有的WebPart可以验证它们并显示适当的消息(例如,对于所需的查找字段),但是DataFormWebPart没有这样做( ListFormWebPart确实这样做)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3230549

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档