如何在jquery中取消选中复选框时清除文本框值
How to clear textbox value when checkbox got unchecked in jquery?
我有一个数据表(使用jQuery创建),其第一列包含复选框,最后一列包含文本框。由于文本框和复选框是动态创建的,因此它们具有相同的ID和名称,如下所示:
$('#statement-table').dataTable({
"data": json,
"dom": 't',
"columns": [
{"data":""},
{"data": "statementCode"},
{"data": "dueDate"},
{"data": "statementBalance"},
{"data": ""}
],
"columnDefs": [
{className: "pad-md-left-p-10 pad-top-bottom-p-10 white-active-bg mouse-link", "targets": [0,1,2,3,4]},
{
'targets': 0,
'orderable': false,
'render': function(data, type, full, meta) {
return '<input type="checkbox" name="payment-checkbox" id="select-checkbox"/>';
}
},
{
'targets': 4,
'render': function (data, type, full, meta){
return
'<input type="number" id="payement-textbox" name="text[]" class="payment" value=""/>';
}
}
],
"aaSorting": [[2, 'desc']],
}); //End of datatable function
我的要求是在取消选中相应的复选框时清除文本框值。我写了以下jquery代码,但它没有清除文本框:
$("input[name=payment-checkbox]").click(function () {
$("table tr td input[type='checkbox']").each(function () {
var ischecked = $(this).is(":checked");
if (!ischecked) {
$(this).parent().next().find("input[type='text']").val("");
}
else
{
alert("do nothing");
}
});
});
请帮我解决这个问题。
document
中不得有多个具有相同id
值的elements
。
使用name
属性选择元素
$('[type="checkbox"]').on('change', function() {
if (!this.checked) {
$('[type="text"][name="' + this.name + '"]').val('');
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<input type="text" name="name1" value="name1">
<input type="checkbox" name="name1" checked>
<br>
<input type="text" name="name2" value="name1">
<input type="checkbox" name="name2" checked>
U 可以测试更改并找到第一个文本框
$('.test').change(function() {
var checkboxINstance = $(this);
if (!checkboxINstance.is(":checked"))
{
checkboxINstance.closest('tr').find("input[type=number]")[0].value= '';
}
});
在这里看小提琴 https://jsfiddle.net/2b6e7v6t/1/
相关文章:
- 如何在OnPaste方法中清除文本区域
- 如何防止在进行选择时清除文本框
- 如何使用Javascript在按Backspace键时清除文本框
- 如何从文本区域输入中清除文本
- 想要清除文本框+聚焦文本框+阻止asp.net在同一按钮上回发
- javascript onclick radio清除文本框
- 清除文本区域会中断其他JS函数
- Javascript:如何清除文本框并恢复其值
- 如何重新启用禁用的下拉列表以及如何清除文本框数据
- 如何在删除/后退/清除文本框中的文本时清除 td 内容
- 按钮在 jsfiddle 中起作用,但不清除文本编辑器中的有序列表
- jQuery/Javascript:如何使用Javascript或jQuery清除文本框上的最近搜索
- 通过单击清除文本输入
- 清除文本框,但使用 Java 脚本给出错误
- 取消选中复选框时隐藏和清除文本框
- IE 不会清除文本区域值
- JavaScript 清除文本框 DOM 仅清除顶部框
- 清除文本框字段后再次加载选择框
- 清除文本框 脚本不起作用
- 角度.js - Google 自动完成事件触发时的清除文本框