Php JQUERY代码不适用于数组的每个值
我想在单击复选框时启用和禁用选择选项 但它只适用于单个值,而不适用于数组的每个值 如果我使用id作为数组来获取select的值,那么它将不起作用 请更新我的代码或提供其他方法。我已经尝试过java脚本,但它也不能正常工作Php JQUERY代码不适用于数组的每个值,php,jquery,arrays,Php,Jquery,Arrays,我想在单击复选框时启用和禁用选择选项 但它只适用于单个值,而不适用于数组的每个值 如果我使用id作为数组来获取select的值,那么它将不起作用 请更新我的代码或提供其他方法。我已经尝试过java脚本,但它也不能正常工作 <script> var update_courier = function () { if ($("#checkbox").is(":checked")) { $('#courier').prop('disabl
<script>
var update_courier = function () {
if ($("#checkbox").is(":checked")) {
$('#courier').prop('disabled', false);
}
else {
$('#courier').prop('disabled', 'disabled');
}
};
$(update_courier);
$("#checkbox").change(update_courier);
</script>
<div class="conatiner">
<div class="col-sm-3 col-sm-offset-3" style="margin-top: -35%;">
<form action="<?php echo site_url('invoice/invoidlist'); ?>" method="POST">
<table class="table table-bordered">
<?php foreach($details as $detail):?>
<tr>
<td><input id="checkbox" type="checkbox" value="<?php echo $detail['OrderId'];?>" name="checkbox">
<td>
<?= $detail['OrderId']?>
</td>
<td>
<?= $detail['CustomerName']?>
</td>
<td>
<?=$detail['Address']?>
</td>
<td>
<?=$detail['ZipCode']?>
</td>
<td>
<?=$detail['FinanicalStatus']?>
</td>
<td>
<?=$detail['Payment']?>
</td>
<td>
<select id="courier">
<option>(choose one)</option>
<option value='1'>Bluedart</option>
<option value='2'>Delhivery</option>
<option value='3'>DTDC</option>
<option value='4'>IndiaPost</option>
</select>
</td>
</tr>
<?php endforeach; ?>
</table>
</div>
<input type="submit" name="submit" value="submit" style="margin-left: 30%;">
</form>
</div>
</div>
var update_courier=函数(){
如果($(“#复选框”)。是(“:选中”)){
$('#courier').prop('disabled',false);
}
否则{
$('#courier').prop('disabled','disabled');
}
};
$(更新);
$(“#复选框”)。更改(更新);
(选择一个)
蓝镖
德尔希维利
DTDC
印度使徒
-在这里给出的演示中创建了静态表
不要使用复选框上的id
,而是在HTML DOM
中使用类
,因为id应该是唯一的
,然后您可以编写事件,单击复选框
并启用或禁用选择与其行
对应的元素,如下所示
$(".chkSelect").on('click',function(){
$(this).closest('tr').find('.courier').prop('disabled',$(this).is(":checked"))
});
这里的.chkSelect
是复选框的类,而是选择的类
您为表更新的php
如下所示:
<table class="table table-bordered">
<?php foreach($details as $detail):?>
<tr>
<td>
<input class="chkSelect" type="checkbox" value="<?php echo $detail['OrderId'];?>" name="checkbox">
<td>
<?= $detail['OrderId']?>
</td>
<td>
<?= $detail['CustomerName']?>
</td>
<td>
<?=$detail['Address']?>
</td>
<td>
<?=$detail['ZipCode']?>
</td>
<td>
<?=$detail['FinanicalStatus']?>
</td>
<td>
<?=$detail['Payment']?>
</td>
<td>
<select class="courier"> <!--Change this to class-->
<option>(choose one)</option>
<option value='1'>Bluedart</option>
<option value='2'>Delhivery</option>
<option value='3'>DTDC</option>
<option value='4'>IndiaPost</option>
</select>
</td>
</tr>
<?php endforeach; ?>
</table>
(选择一个)
蓝镖
德尔希维利
DTDC
印度使徒
-在这里给出的演示中创建了静态表
不要使用复选框上的id
,而是在HTML DOM
中使用类
,因为id应该是唯一的
,然后您可以编写事件,单击复选框
并启用或禁用选择与其行
对应的元素,如下所示
$(".chkSelect").on('click',function(){
$(this).closest('tr').find('.courier').prop('disabled',$(this).is(":checked"))
});
这里的.chkSelect
是复选框的类,而是选择的类
您为表更新的php
如下所示:
<table class="table table-bordered">
<?php foreach($details as $detail):?>
<tr>
<td>
<input class="chkSelect" type="checkbox" value="<?php echo $detail['OrderId'];?>" name="checkbox">
<td>
<?= $detail['OrderId']?>
</td>
<td>
<?= $detail['CustomerName']?>
</td>
<td>
<?=$detail['Address']?>
</td>
<td>
<?=$detail['ZipCode']?>
</td>
<td>
<?=$detail['FinanicalStatus']?>
</td>
<td>
<?=$detail['Payment']?>
</td>
<td>
<select class="courier"> <!--Change this to class-->
<option>(choose one)</option>
<option value='1'>Bluedart</option>
<option value='2'>Delhivery</option>
<option value='3'>DTDC</option>
<option value='4'>IndiaPost</option>
</select>
</td>
</tr>
<?php endforeach; ?>
</table>
(选择一个)
蓝镖
德尔希维利
DTDC
印度使徒
-在这里给出的演示中创建了静态表
不要使用复选框上的id
,而是在HTML DOM
中使用类
,因为id应该是唯一的
,然后您可以编写事件,单击复选框
并启用或禁用选择与其行
对应的元素,如下所示
$(".chkSelect").on('click',function(){
$(this).closest('tr').find('.courier').prop('disabled',$(this).is(":checked"))
});
这里的.chkSelect
是复选框的类,而是选择的类
您为表更新的php
如下所示:
<table class="table table-bordered">
<?php foreach($details as $detail):?>
<tr>
<td>
<input class="chkSelect" type="checkbox" value="<?php echo $detail['OrderId'];?>" name="checkbox">
<td>
<?= $detail['OrderId']?>
</td>
<td>
<?= $detail['CustomerName']?>
</td>
<td>
<?=$detail['Address']?>
</td>
<td>
<?=$detail['ZipCode']?>
</td>
<td>
<?=$detail['FinanicalStatus']?>
</td>
<td>
<?=$detail['Payment']?>
</td>
<td>
<select class="courier"> <!--Change this to class-->
<option>(choose one)</option>
<option value='1'>Bluedart</option>
<option value='2'>Delhivery</option>
<option value='3'>DTDC</option>
<option value='4'>IndiaPost</option>
</select>
</td>
</tr>
<?php endforeach; ?>
</table>
(选择一个)
蓝镖
德尔希维利
DTDC
印度使徒
-在这里给出的演示中创建了静态表
不要使用复选框上的id
,而是在HTML DOM
中使用类
,因为id应该是唯一的
,然后您可以编写事件,单击复选框
并启用或禁用选择与其行
对应的元素,如下所示
$(".chkSelect").on('click',function(){
$(this).closest('tr').find('.courier').prop('disabled',$(this).is(":checked"))
});
这里的.chkSelect
是复选框的类,而是选择的类
您为表更新的php
如下所示:
<table class="table table-bordered">
<?php foreach($details as $detail):?>
<tr>
<td>
<input class="chkSelect" type="checkbox" value="<?php echo $detail['OrderId'];?>" name="checkbox">
<td>
<?= $detail['OrderId']?>
</td>
<td>
<?= $detail['CustomerName']?>
</td>
<td>
<?=$detail['Address']?>
</td>
<td>
<?=$detail['ZipCode']?>
</td>
<td>
<?=$detail['FinanicalStatus']?>
</td>
<td>
<?=$detail['Payment']?>
</td>
<td>
<select class="courier"> <!--Change this to class-->
<option>(choose one)</option>
<option value='1'>Bluedart</option>
<option value='2'>Delhivery</option>
<option value='3'>DTDC</option>
<option value='4'>IndiaPost</option>
</select>
</td>
</tr>
<?php endforeach; ?>
</table>
(选择一个)
蓝镖
德尔希维利
DTDC
印度使徒
您必须具有唯一的id,for循环打印(我猜)更多具有相同id的元素-请改用类。首先修复它,然后,如果问题仍然存在,用更新的代码编辑问题。。