我想检索并提交包含Rich Text的数据到Web服务,但我在Web服务端遇到了特定数据类型的问题。
如果我有来自webservice的简单字符串类型,infopath将不允许RTF框,因为它不是正确的数据类型(XHTML)。
有人有什么想法吗?
编辑:开始赏金。
答案 0 :(得分:2)
您是正确的,Rich Text Box不会绑定到简单的字符串。 XML Schema类型是错误的。
如果您能够影响您要连接的网络服务的架构,则可以完成。
如果您能够修改Web服务,则此解决方案有效。另一方面,如果你不是,你可能不得不依赖于在InfoPath表单中编写一些代码,这些代码将Web服务数据中的数据复制到未绑定的Rich Text Box,然后再返回。
顺便说一句,我假设你已经使用过InfoPath的Rich Text Box并看到了它产生的令人讨厌的HTML。如果您打算使用它,除了在InfoPath的富文本框中重新显示它之外,我不建议尝试使用该HTML。
答案 1 :(得分:0)
在xml文件上创建自定义引用,如下所示
**<xsd:element name="myxhtmltest">
<xsd:complexType mixed="true">
<xsd:sequence>
<xsd:any namespace="http://www.w3.org/1999/xhtml" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>**
然后使用上面的标记作为元素所在的参考
**<s:element ref="tns:myxhtmltest" minOccurs="0" maxOccurs="1"/>**