Используйте change()
, а не click()
, затем проверьте с помощью .is(':checked')
$.urlParam = function(name) {
var results = new RegExp('[\?&]' + name + '=([^&#]*)').exec(window.location.href);
if (results) {
return results[1];
} else {
return 0;
}
}
$('#uc').change(function() {
var country = $(this).val();
var site_url = $('body').data('site-url');
var url = $('body').data('url');
var site_url = 'google.com' // temp remove later
var url = '/sd/' // temp remove later
if ($(this).is(':checked')) {
console.log(site_url + url + '?show=' + country)
//window.location.href = site_url + url + '?show=' + country; // uncomment later
} else {
console.log(site_url)
//window.location.href = site_url; // uncomment later
}
});
if ($.urlParam('show') == $('#uc').val()) {
$('#uc').attr('checked', true);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="checkbox" name="uc" id="uc" value="UK"> <label for="uc">Only UK</label>