Reputation: 223
I am trying to remove the required
property from input field when the checkbox is unchecked but it's not working and when the checkbox is checked field should be required please help me thanks.
html view
<div class="col-md-2">
<input type="checkbox" id="scheduledis" name="checkbox[0]" class="schedule_discount" value="" >
<label for=""> Schedule Discount
</label>
</div>
<div class="input-group">
<input type="text" class="form-control datepicker-autoclose-1 dislay-required" required placeholder="Start Date" value="" name="start_date" >
<div class="input-group-append">
<span class="input-group-text">
<i class="md md-event-note">
</i>
</span>
</div>
<span class="text-danger">{{$errors->first('date') ?? null}}
</span>
</div>
jquery script
$('input[type="checkbox"]').change(function() {
//check if check if checked
$(this).is(':checked') ?
$('input[name=start_date]').prop('required', false) :
$('input[name=start_date]').prop('required', true);
$('input[name=end_date]').prop('required', false) :
$('input[name=end_date]').prop('required', true);
$('input[name=start_time]').prop('required', false) :
$('input[name=start_time]').prop('required', true);
$('input[name=end_time]').prop('required', false) :
$('input[name=end_time]').prop('required', true);
});
Upvotes: 4
Views: 1320
Reputation: 1
<label for="newmyCheck">NewCheckbox:</label>
<input type="checkbox" id="declinecontact" onclick="mycheckfunc()">
<br><br>
<form>
NAME: <input type="text" id="Personfirstname"><br><br>
SUBMIT: <input type="submit" value="submit">
</form>
<script>
mycheckfunc();
function mycheckfunc(){
var checkBox = document.getElementById("declinecontact");
var firstname = document.getElementById("Personfirstname");
if (checkBox.checked == true){
firstname.required = false;
} else {
firstname.required = true;
}
}
Upvotes: 0
Reputation: 28522
You can simply check if the checkbox is checked
then use prop('required', false)
or prop('required', true)
to remove or add required attribute from input box.
Demo Code :
$('input[type="checkbox"]').change(function() {
//check if check if checked
$(this).is(':checked') ?
$('input.dislay-required').prop('required', false) :
$('input.dislay-required').prop('required', true);
});
:required {
color: red;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="col-md-2">
<input type="checkbox" id="scheduledis" name="checkbox[0]" class="schedule_discount" value="">
<label for=""> Schedule Discount
</label>
</div>
<div class="input-group">
<input type="text" class="form-control datepicker-autoclose-1 dislay-required" required placeholder="Start Date" value="" name="start_date">
<input type="text" class="form-control datepicker-autoclose-1 dislay-required" required placeholder="End Date" value="" name="end_date">
<div class="input-group-append">
<span class="input-group-text">
<i class="md md-event-note">
</i>
</span>
</div>
</div>
Upvotes: 2