我正在尝试使条件显示正常工作。我正在尝试做的是:
在已合并的块中,如果值为空,我想显示一个输入框以及其他一些我需要随身携带的隐藏变量,但是如果值不为空,我想简单地显示那个价值。
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
谢谢
彼得
答案 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:
表示如果该值为空字符串(''),则显示该块,在其他情况下将其删除。