Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用jquery显示Html复选框。需要检查复选框值是否已更改(已选中/未选中)_Jquery - Fatal编程技术网

使用jquery显示Html复选框。需要检查复选框值是否已更改(已选中/未选中)

使用jquery显示Html复选框。需要检查复选框值是否已更改(已选中/未选中),jquery,Jquery,这里放置了所有代码 下面是在没有jquery的情况下创建/显示的复选框。如果复选框值更改,则中的值为\u checkbox\u changed0更改为1。一切顺利 <br>input type='checkbox' without jquery. All works<br> <table><tr><td> <input type='checkbox' id='checkbox_to_update0' name='checkbox_

这里放置了所有代码

下面是在没有jquery的情况下创建/显示的复选框。如果复选框值更改,则
中的值为\u checkbox\u changed0
更改为
1
。一切顺利

<br>input type='checkbox' without jquery. All works<br>
<table><tr><td>
<input type='checkbox' id='checkbox_to_update0' name='checkbox_to_update0' class='checkbox_to_update_changed0' value = 'true' >
</td></tr></table>

<table><tr><td>
<input type="text" name="is_checkbox_changed0" id="is_checkbox_changed0" style='width:30px;'>
<script>
$(".checkbox_to_update_changed0").change(function(){
document.getElementById('is_checkbox_changed0').value = 1;
});
</script>
</td></tr></table>

在不使用jquery的情况下输入type='checkbox'。所有作品
$(“.checkbox\u to\u update\u changed0”).change(函数(){ document.getElementById('is\u checkbox\u changed0')。值=1; });
但是需要使用jquery显示复选框

创建了这样的代码

<br>But with jquery input type='checkbox' does not work<br>

<script language="javascript" type='text/javascript'>
$(document).ready(function() {
$('#existing_company_error').html("Checkbox <input type='checkbox' id='checkbox_to_update' name='checkbox_to_update' class='checkbox_to_update_changed' value = 'true' ><br>");
});
</script>

<div id="existing_company_error"></div>


<table><tr><td>
<input type="text" name="is_checkbox_changed" id="is_checkbox_changed" size="" style='width:30px;'>

<script>
$(".checkbox_to_update_changed").change(function(){
//$('input[type="checkbox"]').change(function(){
//$(".checkbox_to_update_changed").on("change", function () {
document.getElementById('is_checkbox_changed').value = 1;
});
</script>

</td></tr></table> 

但是使用jquery输入type='checkbox'不起作用
$(文档).ready(函数(){ $(“#现有#公司#错误”).html(“复选框
”; }); $(“.checkbox\u to\u update\u changed”).change(函数(){ //$('input[type=“checkbox”]”)。更改(函数(){ //$(“.checkbox\u to\u update\u changed”)。关于(“更改”,函数(){ document.getElementById('is_checkbox_changed')。值=1; });
如果我更改复选框值(选中或取消选中复选框),则
中的值是\u checkbox\u更改的
必须更改为
1
。但它不会更改

请问,有什么需要纠正的


解决方案哦,我太笨了。
document.getElementById('is\u checkbox\u changed')。value=1;
必须在
$(document)中。就绪(function(){
。所有工作都可以

由于元素是动态创建的,请使用事件委派

$(document).on('change', ".checkbox_to_update_changed", function(){
    document.getElementById('is_checkbox_changed').value = 1;
});


由于元素是动态创建的,因此请使用事件委派

$(document).on('change', ".checkbox_to_update_changed", function(){
    document.getElementById('is_checkbox_changed').value = 1;
});

使用

您必须使用
$(文档)
将单击处理程序附加到动态添加的元素,因为
$(文档)
始终存在,因此您可以始终附加到它。特别是附加到不存在的元素在这种情况下将不起作用。 另外,最好将所有与
DOM
交互的
jQuery
代码包装为
$(document).ready()
,以确保在附加事件等之前加载所有内容

(这是我的第一篇堆栈溢出帖子!)

使用

您必须使用
$(文档)
将单击处理程序附加到动态添加的元素,因为
$(文档)
始终存在,因此您可以始终附加到它。特别是附加到不存在的元素在这种情况下将不起作用。 另外,最好将所有与
DOM
交互的
jQuery
代码包装为
$(document).ready()
,以确保在附加事件等之前加载所有内容


(这是我的第一篇堆栈溢出帖子!)

毫无疑问在别处得到了回答。使用
$(…).is(':checked')
我知道
is(':checked')
。但是如果复选框未选中,还需要更改值。毫无疑问在别处得到了回答。使用
$(…).is(':checked')
我知道
is(':checked'))
。如果复选框未选中,还需要更改值。
$(document).on('change', '.checkbox_to_update_changed', function(){

});