合并块中的条件显示

时间:2018-06-19 17:51:57

标签: tinybutstrong

我正在尝试使条件显示正常工作。我正在尝试做的是:

在已合并的块中,如果值为空,我想显示一个输入框以及其他一些我需要随身携带的隐藏变量,但是如果值不为空,我想简单地显示那个价值。

PHP

$cks . . some query;
$TBS->LoadTemplate("check.html") ;
$TBS->MergeBlock("cks",$cks);
$TBS->Show(TBS_NOTHING); echo($TBS->Source);

模板部分

<td width="25%" class="mod_row2">[cks.check1]</td>
<td width="25%" class="mod_row2">
[cks.value;ifempty=
<input type="text" name="value[]" value="" size="26">
<input type=hidden name="check_id[]" value="[cks.check_id]">
<input type=hidden name="equip_id[]" value="[cks.equip_id]">
]</td> "

除隐藏单元格的值未合并外,其他所有操作均有效。我不知道这是正确的方式还是可行的。 。 。 TBS 3.8.0,php 5.3.3

谢谢

彼得

1 个答案:

答案 0 :(得分:0)

您的带有<input>的HTML部分未解析,因为它嵌入在TBS参数(ifempty)中。

在TBS字段中嵌入HTML / XML并不是一个好习惯。

最好的方法是对块使用条件显示。 magnet功能非常有用。 适合您的示例:

<td width="25%" class="mod_row2">[cks.check1]</td>
<td width="25%" class="mod_row2">
    <div>
        [cks.value;ope=mok:;magnet=div]
        <input type="text" name="value[]" value="" size="26">
        <input type=hidden name="check_id[]" value="[cks.check_id]">
        <input type=hidden name="equip_id[]" value="[cks.equip_id]">
    </div>
</td>

在此示例中,参数ope=mok:表示如果该值为空字符串(''),则显示该块,在其他情况下将其删除。