【问题标题】:Microsoft Word 2013 - form field - based on dropdown value show / hide fieldsMicrosoft Word 2013 - 表单字段 - 基于下拉值显示/隐藏字段
【发布时间】:2015-01-10 15:04:24
【问题描述】:

我的文档中有几个字段。基于一个下拉字段,我想显示/隐藏其他几个字段。

以另一种方式讲述。我有一个下拉菜单,其中包含“自定义”、“周日”、“关闭”这些选项。如果下拉值是“自定义”,那么我应该显示“时间”字段。它应该只打印下拉值的所有其他选项。

在我的word文件里是这样的 [下拉] [时间]

例如:下拉值是“自定义”,该字段应如下所示(仅显示时间):

  • 0800 - 1600

例如:下拉值是“关闭”,该字段应如下所示(仅显示下拉值):

  • 关闭

我尝试过使用这样的公式:

{ IF "{dropdown}" = "custom", "", {dropdown} }

我认为问题在于,当用户从下拉列表中选择一个值时,“下拉列表”字段正在发生变化。有没有办法从下拉列表中插入值.. 像 REF "{dropdown}"

如果你仍然不明白我想要得到什么......用第三种方式告诉你:

  • 如果下拉菜单显示“自定义”,我只想显示商店营业的时间。
  • 如果下拉列表显示除自定义之外的任何其他内容,它应该只打印下拉列表的值,并将时间留“空白”

【问题讨论】:

    标签: drop-down-menu ms-word field form-fields


    【解决方案1】:

    假设您使用的是遗留表单字段,只是尝试更改显示的内容,而不是用户可以输入的字段(就@“time”而言,这是模棱两可的)然后你需要这样的东西:

    { IF "{ dropdownfieldname }" = "custom" "{ TIME }" "{ dropdownfieldname }" }
    

    在哪里 - 所有 {} 都是特殊字段代码大括号对,您可以在 Windows Word 上使用 ctrl-F9 插入 - dropdownfieldname 是下拉字段的名称(在其属性中设置)。可以重新定位此书签名称,在这种情况下,您需要在开发时多次重命名下拉列表以重新施加它 - “自定义”必须是“自定义”,如下拉列表的值列表中所写。即,如果它是“自定义”,请使用“自定义”。或者使用

    { IF "{ dropdownfieldname \*upper }" = "CUSTOM" "{ TIME }" "{ dropdownfieldname }" }
    
    • { TIME } 是内置时间字段。如果您真的想要引用另一个表单字段值,恰好有书签“时间”,您可能需要“{ ref time }”代替。如果您的字段实际上称为“timefield”,请使用“{ timefield }”

    如果您使用的是内容控件,IMO 最好的方法实际上是创建一个自定义 XML 部件,将下拉结果链接到部件中的元素,将纯文本内容控件链接到同一元素,然后字面上将该控件插入我放置 { dropdownfieldname } 的位置。 { timefieldm }

    同上

    【讨论】:

    • 我不确定我在使用什么。我正在从选项卡“插入”->“快速部件”->“文档属性”中获取字段。我已经尝试过您的解决方案,但似乎第一个“下拉字段”一直在更改为其中一个值!有没有办法只从“下拉字段”中获取值。
    • 如果它来自快速部分->文档属性,它是一个内容控件。如果它也是一个下拉列表,那么我认为您的文档必须来自 Sharepoint 站点。你能确认/否认吗?如果它来自 SharePoint,则相关数据位于自定义 XML 部分中,您可能需要创建一个新的纯文本内容控件,该控件指向与下拉列表相同的元素。
    • 我终于找到了问题所在!在公式中它不应该有“,”(逗号)!!
    猜你喜欢
    • 1970-01-01
    • 2019-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多