0

問題は、繰り返しに残っている唯一の行を削除した後、[追加] ボタンが機能しなくなることです。

質問が受け入れられるように、投稿に余分なものを埋め込む

<html xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:xf="http://www.w3.org/2002/xforms" xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>Movie Review Selector</title>
        <model xmlns="http://www.w3.org/2002/xforms">
            <instance id="movies">
                <movies xmlns="">
                    <movie id=""></movie>
                </movies>
            </instance>
            <submission id="save" action="echo.xq" method="post" includenamespaceprefixes="" serialization="application/xml" ref="instance('movies')"/>

            </submission>
        </model>
    </head>
    <body>
            <group xmlns="http://www.w3.org/2002/xforms" ref="instance('movies')">
                <repeat nodeset="movie" id="idx">
                    <input ref="@id">
                        <label>Movie Id</label>
                    </input>
                    <trigger>
                        <label>Delete</label>
                        <delete nodeset="." ev:event="DOMActivate"></delete>
                    </trigger>
                </repeat>
                <trigger>
                    <label>Add</label>
                    <action ev:event="DOMActivate">
                        <insert nodeset="movie"></insert>
                        <setvalue ref="movie[last()]/@id" value=""></setvalue>
                    </action>
                </trigger>
                <submit submission="save">
                    <label>Submit</label>
                </submit>
            </group>
    </body>
</html>
4

1 に答える 1

1

次の 2 つのオプションがあります。

  1. アイテムが 1 つしか残っていない場合は、[削除] ボタンを無効にします。XForms Wikibook にその方法が示されています: http://en.wikibooks.org/wiki/XForms/Disable_Trigger
  2. 行の起点を繰り返しの最後の行ではなく、別のインスタンスに設定します。この記事を読んで方法を確認してください: http://en.wikibooks.org/wiki/XForms/Insert_with_Origin

チッ!

于 2015-02-04T12:51:48.120 に答える