Joomla 3.9.3モジュールで、他の3つのフィールドの値をチェックして、showonでフィールドを表示/非表示にしようとしています
私のXML:
<field
name="foo"
type="text"
/>
<field
name="bar"
type="text"
/>
<field
name="fooimg"
type="media"
showon="foo!:[OR]bar!:"
/>
<field
name="baz"
type="radio"
class="btn-group btn-group-yesno"
showon="foo!:[OR]bar!:[AND]fooimg!:"
default=""
>
<option value="bazval">JYES</option>
<option value="">JNO</option>
</field>
あり:showon="foo!:[OR]bar!:[AND]fooimg!:"
on bazフィールド(fooまたはbarに値がある)とfooimgにも値がある場合に、bazが表示されることを期待しています。
しかし、結果は次のとおりです。
foo = true
bar = false
fooimage = true
baz is NOT SHOWED (should be showed)
foo = false
bar = true
fooimage = true
baz IS SHOWED (as aspected)
Fooimageまたはfoo and barをFalseに設定すると、期待どおりに動作します。
私も試しました:"fooimg!:[AND]foo!:[OR]bar!:"
私は何を間違えましたか?
これがあなたに役立つかどうかは完全にはわかりませんが、fooimg
フィールドはfoo
またはbar
is trueの場合にのみ表示されるため、その後、baz
フィールドで再度確認する必要はないため、fooimg
フィールドがtrueであるかどうかを確認するだけで十分です。
<field
name="baz"
type="radio"
class="btn-group btn-group-yesno"
showon="fooimg!:"
default=""
>
<option value="bazval">JYES</option>
<option value="">JNO</option>
</field>
このbaz
フィールドは、foo
orbar
が空でない場合にのみ表示されますandfooimg
は空ではありません。したがって、実際に同じ結果が得られます(実際に取得したかった)。