下面是選擇所有服務器的代碼
<input type="checkbox" id="all_maintenace" class="checkbox " style="vertical-align: middle;"
name="all_chkb_maintenace" value=""> Maintenace All </th>
下面是單獨選擇的代碼
<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>
下面將是禁用/凍結維護復選框的代碼
<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>
下面將是腳本
$(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)
});
});
控制器:
$all_user = $request->chkb_all_users;
$selected_user = $request->has('chkb_maintenace') ? $request->chkb_maintenace : [];
$un_selected_user = array_diff($all_user, $selected_user);
所以我的問題是如何將我已禁用/凍結的復選框值傳遞給控制器??,而我尚未禁用/凍結的其他復選框則傳遞給控制器
uj5u.com熱心網友回復:
您可以使用簡單的機制來解決它。使用隱藏文本欄位,當您選中復選框時,您可以將值分配為“1”。當您凍結它時,您可以將其分配為“0”。很簡單
<input type="hidden" id="checkbox_status" value="0" />
js 方面,您可以在單擊復選框時更改該值
$('#checkbox_status').val(1);
uj5u.com熱心網友回復:
很簡單。這樣做
<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>
<input type="hidden" id="checkbox_status" value="0" />
你的js應該是這樣的
$(function() {
$(".checkbox_freeze").on("change", function() {
var ticked = $(this).val();
const checked = this.checked;
if(checked){
$('#checkbox_status').val(1);
} else {
$('#checkbox_status').val(0);
}
$("#maintenace_" ticked).attr("disabled", checked)
});
});
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/518277.html
下一篇:Git結帳標簽現有分支
