Onchange文本框自动复选框

时间:2013-11-28 02:47:52

标签: javascript html html5

当我更改第二个文本框时,第一个复选框将会检查。我想要的是当第二个文本框的值被更改时,第二个复选框会自动被检查。

这是我的HTML

<input type="checkbox" id="chbx" onchange="checkbox_changed()">
<input type="text" id="chbx" onChange="checkbox_changed()" value="Value1">
<br>
<input type="checkbox" id="chbx" onchange="checkbox_changed()">
<input type="text" id="chbx" onChange="checkbox_changed()" value="Value2">

的Javascript

<script type="text/javascript">
    var checkbox = document.getElementById("chbx");

    function checkbox_changed() {
      checkbox.checked = true;
    }
</script>

解决方案是这样的。但我使用文本框而不是下拉列表。 http://jsfiddle.net/jfriend00/g3UQG/

3 个答案:

答案 0 :(得分:2)

您有四个具有相同ID的元素。 HTML中的ID必须是唯一的。

答案 1 :(得分:0)

元素的ID必须是唯一的,所以请改用class。

<input type="checkbox" class="chbx" />
<input type="text" class="chbx" value="Value1" />
<br/>
<input type="checkbox" class="chbx">
<input type="text" class="chbx" value="Value2" />

然后

$('.chbx[type="checkbox"]').change(function () {
    if (!this.checked) {
        $(this).next().val('')
    }
})
$('.chbx[type="text"]').change(function () {
    $(this).prev().prop('checked', this.value != '')
}).change()

演示:Fiddle

答案 2 :(得分:0)

这是你的HTML:

<input type="checkbox" id="chbx" onchange="checkbox_changed()">
<input type="text" class="chk" onChange="checkbox_changed()" value="Value1">
<br>
<input type="checkbox" class="chk" onchange="checkbox_changed()">
<input type="text" class="chk" onChange="checkbox_changed()" value="Value2">

这是javascript:

<script type="text/javascript">
    $(function(){
       // when you check your chbx checkbox, other checkbox is checked too.
       $("#chbx").change(function(){
         $('.chk').prop('checked', true);
       });
    });
</script>