如果其他条件在Javascript模板文字中不起作用

Ikr*_*zer 1 javascript template-strings template-literals

我在tbody中显示表格数据时遇到问题,在我的javascript中我得到了结果对象,并且我在javascript文件中使用了模板文字,这是我的代码:

for (i = 0; i < size; i++) 
{
    serialNo++;
    html += `<tr>
    <td>${serialNo}</td>
    <td>${result[i].first_name}</td>
    <td>${result[i].last_name}</td>
    <td>${result[i].email}</td>
    <td>${result[i].mobile}</td>
    (${(result[i].status == 1)} ? '<td><div class="switchery-demo">
    <input type="checkbox" checked id="demo${result[i].contact_id}" 
    onclick="status_item(this,'${result[i].contact_id}')" 
    data-plugin="switchery" data-size="small" data-color="#1bb99a"/> 
    </div></td>' : '<td><div class="switchery-demo"><input 
    type="checkbox" checked data-plugin="switchery" 
    id="demo${result[i].contact_id}" 
    onclick="status_item(this,'${result[i].contact_id}')" data- 
    size="small" data-color="#1bb99a"/></div></td>')
    </tr>`;
}
Run Code Online (Sandbox Code Playgroud)

在result [i] .status中,我正在使用三元运算符,我正在检查status == 1,然后显示另一个,然后显示第二个,但它创建的是两个而不是一个,我不知道我要去哪里,请帮忙。

Nin*_*olz 5

您需要将整个部分移到表达式部分

`${ result[i].status == 1
    ? '...'
    : 'some other'
}`
Run Code Online (Sandbox Code Playgroud)

带有嵌套模板字符串的示例。

`${ result[i].status == 1
    ? '...'
    : 'some other'
}`
Run Code Online (Sandbox Code Playgroud)