根据单选按钮更改表

时间:2018-12-20 14:21:19

标签: javascript html-table radio-button

我有2006年和2010年的两个不同的worldcupresults数据集。我希望能够选择2006年单选按钮并在其中显示当年的结果。  在表格中,我还希望选择2010年并在表格中显示该年的结果。 2006表正确显示,但是当选择2010单选按钮时,没有任何反应。任何帮助表示赞赏。

这是我尝试过的代码,但无法正常工作。

if(document.getElementById("radiobutton2006").checked = true)
{
     $ ('#table2006').append(`<tr><td>${value.team}</td <td>${value.result}</td></tr>`);
}
else if(document.getElementById("radiobutton2010").checked = true)
{
     $ ('#table2010').append(`<tr><td>${value.team}</td> <td>${value.result}</td></tr>`);
}

2 个答案:

答案 0 :(得分:0)

if语句要求指定的条件为真实虚假。您在 if-else 条件下使用赋值运算符=。由于=checked属性,所以实际上boolean符号不是必需的。

if(document.getElementById("radiobutton2006").checked)
{
     $ ('#table2006').append(`<tr><td>${value.team}</td <td>${value.result}</td></tr>`);
}
else if(document.getElementById("radiobutton2010").checked)
{
     $ ('#table2010').append(`<tr><td>${value.team}</td> <td>${value.result}</td></tr>`);
}

但是,如果要继续使用相等运算符,则应将=替换为=====。请注意,=====不同。 ===还会检查类型。

答案 1 :(得分:0)

只想在Elishs的答案上有所建树。您似乎正在使用jQuery,因此我适当地更新了document.getElementById。 而且,正如Elish所提到的,JavaScript中有两种相等形式。 ==是弱相等,而===是严格。通常应该使用严格,因为在某些情况下==可能会导致意外行为。

if ($("#radiobutton2006").prop('checked') === true)

请参阅: