Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
199 views
in Technique[技术] by (71.8m points)

javascript - Adding a parameter to URL with checkbox (jQuery)

I'm adding ?show={COUNTRY CODE} to URL as a parameter. I managed to add it with the code below but can't remove it when you unselect the checkbox.

$.urlParam = function(name) {
  var results = new RegExp('[?&]' + name + '=([^&#]*)').exec(window.location.href);
  if (results) {
    return results[1];
  } else {
    return 0;
  }
}

$('#uc').click(function() {

  var country = $(this).val();
  var site_url = $('body').data('site-url');
  var url = $('body').data('url');

  window.location.href = site_url + url + '?show=' + country;
});

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>
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Use the condition to check the checkbox is clicked or not.

if ($(this).is(':checked')) {
    console.log(site_url + url + '?show=' + country)
 } else {
    console.log(site_url + url)
  } 

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...