Php 我想在单击复选框时禁用文本框。复选框是动态的 $(函数(){ $(“输入:复选框”)。单击(函数(){ 如果($(this).is(“:checked”)){ var id=$(this.attr('id'); 如果(id){ $(“#txtPassportNumber”).removeAttr(“禁用”); $(“#txtPassportNumber”).focus(); } }否则{ $(“#txtPassportNumber”).attr(“禁用”、“禁用”); } }); });
这是我的jquery代码,我得到了一个文本框Php 我想在单击复选框时禁用文本框。复选框是动态的 $(函数(){ $(“输入:复选框”)。单击(函数(){ 如果($(this).is(“:checked”)){ var id=$(this.attr('id'); 如果(id){ $(“#txtPassportNumber”).removeAttr(“禁用”); $(“#txtPassportNumber”).focus(); } }否则{ $(“#txtPassportNumber”).attr(“禁用”、“禁用”); } }); });,php,jquery,Php,Jquery,这是我的jquery代码,我得到了一个文本框 <script> $(function () { $("input:checkbox").click(function () { if ($(this).is(":checked")) { var id = $(this).attr('id'); if (id) { $("#txtPass
<script>
$(function () {
$("input:checkbox").click(function () {
if ($(this).is(":checked")) {
var id = $(this).attr('id');
if (id) {
$("#txtPassportNumber").removeAttr("disabled");
$("#txtPassportNumber").focus();
}
} else {
$("#txtPassportNumber").attr("disabled", "disabled");
}
});
});
</script>
数量:
您要求解决选择问题,因此这里有一个小的“JQuery”代码
我习惯于解释我用下面的代码做了什么。在代码中,您试图使用要更改的元素的ID。问题是每个元素的ID必须是唯一的,如果所有元素的ID都相同,那么所有这些元素都将被视为一个元素
此外,您还试图为ID分配一个编号(ID=“txtPassportNumber”
),这使得识别更加困难
因此,我在代码中所做的是将侦听器从一个ID移动到另一个类,这使它变得更容易,并释放ID,让您可以使用它做任何您想做的事情。在脚本中,JQuery
侦听.sizeChk类上是否有click事件如果为true,则检查click事件是否选中复选框。然后,如果选中该复选框,它将查找选中复选框的输入。next()
我使用了.next()
,因为输入位于右侧,如果输入位于左侧,则可以使用.prev()
。在找到复选框旁边的输入后,它将应用.prop()
。我没有使用.attr()
,因为它很旧,而且不受JQuery
本身的鼓励
您只需保持类的灵活性,就可以将同一类用于任何其他复选框,从而在这些元素上获得相同的函数
旁注:你最好多读一点JQuery
与描述相符的旧答案。
$(文档).ready(函数(){
$('.sizeChk')。单击(函数(){
如果($(this).is(':checked')){
$(this).next(“input”).prop('disabled',false).focus();
}否则{
$(this).next(“input”).prop(“disabled”,true);
}
});
})
小型:
中等:
大:
xLarg:
第三十一条:
在php中的echo$i
之后重试id=“txtPassportNumber”
请尝试以下操作,id=“txtPassportNumber”
它正在使用获取try的id('click'
@shikha很高兴在这里它对你有用我刚刚更新了我的答案,并对JQuery
的功能进行了描述。很好的解释,但如果我在输入后应用
的话,那么next将不起作用。它的解决方案是什么。嗯.next()
只是在我的代码片段和小提琴中查找输入而不是
,我使用的
没有任何问题。是的,答案更准确谢谢@Sand:)
<label for="chkPassport">
<?php
$select_size = $common->select('size_m', '');
$i = 0;
foreach ($select_size as $sizes) {
$s = $sizes['sizename'];
?>
<input type="checkbox" id="chkPassport<?php echo $s; ?>" class="current"/>
<?php echo $sizes['sizename']; ?>
</label>
qty:
<input type="text" id="txtPassportNumber<?php echo $i;?>" disabled="disabled" class="current<?php echo $s; ?>"/>
<br/>
<?php
$i++;
}
?>