根据具有PHP值的PHP MySQL表中的值进行选择

时间:2018-12-05 22:24:21

标签: javascript php html mysql

我试图使用一个选择框,其值根据数据库在列中是“是”还是“否”来显示。我无法弄清楚我的语法错误是什么,但这将无法正常工作。我正在使用JavaScript值填充所有表格。

tbl +='<td ><select name="status"><option'+if (val['Col4'] == "yes"): + 'selected>yes</option><option'+if (val['Col4'] == "no"): +'selected>no</option></select></td>';

这是我的桌子:

tbl +='<tr row_id="'+row_id+'" style="background color:'+val['default_color']+'">';
tbl +='<td ><div col_name="Col1">'+val['Col1']+'</div </td>';
tbl +='<td ><div col_name="Col2">'+val['Col2']+'</div></td>';
tbl +='<td ><div col_name="Col3">'+val['Col3']+'</div></td>';
tbl +='<td ><select name="status"><option'+if (val['Col4'] == "yes"): + 'selected>yes</option><option'+if (val['Col4'] == "no"): +'selected>no</option></select></td>';                     
tbl +='<td >;
tbl +='</tr>';

但是我的桌子崩溃了。
PHP适用于表的所有其他部分。它正在通过ajax请求,然后保存值。

因此val['Col4']将用作文本输入,而不是选择框选择。

1 个答案:

答案 0 :(得分:0)

使用条件(也称为“三级”)表达式。您需要添加两个选项,而不是单个包含条件的选项。然后每个选项有条件地添加selected

tbl +='<td ><select name="status">';
tbl += '<option' + (val['Col4'] == "yes" ? ' selected' : '') + '>yes</option>';
tbl += '<option' + (val['Col4'] == "no" ? ' selected' : '') + '>no</option>';
tbl += '</select></td>';

您还缺少optionselected之间的空格。