gpt4 book ai didi

xforms:如何防止 xxforms:default 值覆盖用户输入

转载 作者:行者123 更新时间:2023-12-02 04:15:03 24 4
gpt4 key购买 nike

我有一个显示状态的下拉菜单,可以是启用(真)或禁用(假)。这是我的 xml 实例。

<?xml version="1.0" encoding="UTF-8"?>
<page>
<file-name></file-name>
<status></status>
</page>

默认情况下,状态应该为真。所以我将它设置为绑定(bind)如下。
<xforms:bind nodeset="./status" xxforms:default="true()" />

当用户在下拉列表中选择禁用时,状态应保存为 false。这是我保存表单时保存的 xml。
<page>
<file-name>StatusDisabled.xml</file-name>
<status>false</false>
</page>

当我在编辑模式下打开表单时,这是我在 XML 检查器小部件中获得的 xml。
<page>
<file-name>StatusDisabled.xml</file-name>
<status>true></status>
</page>

由于 xxforms:default,状态被设置为 true,即使 xml 保存为状态的 false 值也是如此。

我怎样才能解决这个问题?

这是xhtml:
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xxforms="http://orbeon.org/oxf/xml/xforms">

<head>
<title>XForms Default</title>

<xforms:model>
<xforms:instance id="instance">
<page>
<name xmlns=""/>
<status xmlns=""/>
</page>
</xforms:instance>

<xforms:instance id="status-instance">
<items>
<item label="Enabled" value="true" xmlns=""/>
<item label="Disabled" value="false" xmlns=""/>
</items>
</xforms:instance>

<xforms:bind nodeset="instance('instance')">
<xforms:bind nodeset="./status" xxforms:default="true()" />
</xforms:bind>

</xforms:model>
</head>
<body>
<p>
<xforms:input ref="instance('instance')/name" incremental="true">
<xforms:label>Please enter your name:</xforms:label>
</xforms:input>
</p>
<p>
<xforms:select1 ref="instance('instance')/status" appearance="minimal" incremental="true">
<xforms:label>Please select status:</xforms:label>
<xforms:itemset nodeset="instance('status-instance')/item">
<xforms:label ref="./@label"/>
<xforms:value ref="./@value"/>
</xforms:itemset>
</xforms:select1>
</p>
</body>
</html>

最佳答案

如果发生这种情况,这是一个错误。 xxforms:default应该只评估一次。

关于xforms:如何防止 xxforms:default 值覆盖用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3268751/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com