0

对于循环中的复选框,我有这个 php echo 语句:

echo "<input name='battery[$i]' type='checkbox' id='battery[$i]' value='Yes' style='margin-top:10px; margin-left:15px;' />";

我想根据查询结果将此条件添加到它:

<?php if($rowbill['battery'] == "Yes") print "checked"; ?>

但是我很难获得连接的正确语法,请提供一些帮助。

4

3 回答 3

5

试试这个:

echo "<input name='battery[$i]'" .($rowbill['battery'] == "Yes" ? "checked='checked'" : ""). " type='checkbox' id='battery[$i]' value='Yes' style='margin-top:10px; margin-left:15px;' />";
于 2013-01-05T23:28:52.403 回答
2

为了可读性,我更喜欢在 var 之前设置

$checked = $rowbill['battery'] == "Yes"? ' checked="checked"' : '';

之后:

echo "<input name='battery[$i]' type='checkbox' id='battery[$i]' value='Yes' style='margin-top:10px; margin-left:15px;'$checked />";

否则,只有在一个

echo "<input name='battery[$i]' type='checkbox' id='battery[$i]' value='Yes' style='margin-top:10px; margin-left:15px;'".($rowbill['battery'] == "Yes"? ' checked="checked"' : '')." />";
于 2013-01-05T23:37:03.173 回答
1

试试这个:

 '<input name="'.battery[$i].'" type="checkbox" id="'.battery[$i].'" value="Yes" style="margin-top:10px; margin-left:15px;"'.($rowbill['battery'] == 'Yes' ? ' checked="checked"' : '').'>';

请注意,当您需要将其用作输出的一部分时,使用''分隔符如何更容易连接。""

于 2013-01-05T23:31:15.213 回答