Below is the code to select all the server
<input type="checkbox" id="all_maintenace" class="checkbox " style="vertical-align: middle;"
name="all_chkb_maintenace" value=""> Maintenace All </th>
Below is the code to select individually
<input type="checkbox" id="maintenace_{{ $value->id }}" class="checkbox checkbox_maintenace"
style="vertical-align: middle;" name="chkb_maintenace[]" value="{{ $value->id }}"
{{ ($value->websiteStatus==0)?"checked":'' }}>
<input type="text" name="chkb_all_users[]" value="{{ $value->id }}" hidden>
Below will be the code to disable / freeze the maintenance checkboxes
<input type="checkbox" id="freeze_{{ $value->id }}" class="checkbox checkbox_freeze"
style="vertical-align: middle;" name="frz_maintenace[]" value="{{ $value->id }}">
<input type="text" name="chkb_all_users_frz[]" value="{{ $value->id }}" hidden>
Below will be the script
$(document).on('click', '#all_maintenace', function() {
var checkboxes = $('.checkbox_maintenace');
var chk_value = $('.checkbox_maintenace').val();
$.each(checkboxes, function(i, v) {
var disabled = $(v).prop("disabled");
var checked_length = $(v).is(":checked");
$(v).prop("checked", $('#all_maintenace').prop("checked"));
if (disabled && !checked_length) {
$(v).prop('checked', false); // Unchecks it
} else if (disabled && checked_length) {
$(v).prop('checked', true); // Checks it
}
});
});
$(function() {
$(".checkbox_freeze").on("change", function() {
var ticked = $(this).val();
const checked = this.checked;
$("#maintenace_"+ticked).attr("disabled", checked)
});
});
controller:
$all_user = $request->chkb_all_users;
$selected_user = $request->has('chkb_maintenace') ? $request->chkb_maintenace : [];
$un_selected_user = array_diff($all_user, $selected_user);
So my question is how do I pass to the controller the checkbox value that I have disabled/frozen, while the other checkboxes that I have not disabled/frozen are passed into the controller
2
Answers
you can use simple machanism to solve it. use hidden text field and when you checked your checkbox you can assign value as a ‘1’. when you freeze it you can assign it as a ‘0’. very simple
js side you can change that value when you click checkbox
Very simple.Do like this
your js should like this