如果选中复选框,则显示“已激活”,否则显示“已停用”

时间:2016-07-05 18:23:18

标签: jquery checkbox label checked

我有这个复选框。

<input type="checkbox" value="" name="checkycheck"><label for="checkycheck">Activated</label>

我正在弄清楚如何在选中输入时将“已激活”显示为标签。未选中输入时,显示“已停用”。

所以要解释一下:

if(checkycheck == checked) {
     echo 'Activated';
} else {
     echo 'Deactivated';
}

这种看起来像PHP,但我想在jQuery中实时使用它。我试过在谷歌上寻找,但我真的没有太多的东西,我希望有比我更多jQuery知识的人可以帮助我。

非常感谢。

3 个答案:

答案 0 :(得分:2)

您应该为输入id,因为这是标签可以使用for属性引用的内容。通过这种更改,代码可能如下所示:

$('#checkycheck').change(function () {
  $('label[for="checkycheck"]').text(this.checked ? 'Activated' : 'Deactivated');
}).change();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<input type="checkbox" value="" name="checkycheck" id="checkycheck">
<label for="checkycheck">Activated</label>

请注意结尾附近的change()调用,以确保代码也在页面加载时执行,从一开始就正确设置文本。

答案 1 :(得分:0)

这是Stackoverflow上几个问题的重复。我昨天回答了一个,你可以看到here

&#13;
&#13;
var resultEle = document.getElementById("result");
function showAnswer(ele) {
    if(ele.checked) {
      result.innerHTML = "You checked Yes!";
    }
    else {
      result.innerHTML = "";
    }
}
&#13;
<table>
    <tr>
        <td class="align">
            Yes<br />
            <input type="checkbox" onchange="showAnswer(this)" />
        </td>
        <td>
            <span id="result"></span>
        </td>
    </tr>
</table>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

$('#checkbox').on('change',function(){
if($(this).checked)
   $('label[for="checkbox"]').innerHtml('active');
else
   $('label[for="checkbox"]').innerHtml('deact');
});

这只是一个快速的模型,你应该检查我的拼写。 您还必须添加“复选框”作为输入和名称

的ID