分析获取查询字符串并使用值更改复选框状态


Parse get query string and use value to change check box state

我是javascript的新手,我正在尝试通过在获取查询字符串值中检查复选框的id来更改复选框的状态。例如,如果我们有以下 url http://localhost/aasd/index.php?category[]=74 ,我想更改要选中的 id 为 74 的复选框。

我正在尝试使用以下代码执行此操作,但它不起作用

$(document).ready(function() {
var query = window.location.search.substring(1);
var vars = query.split('&');
for (var i = 0; i < vars.length; i++) {
    var pair = vars[i].split('=');
   document.getElementById(pair[1]).checked = true;
}

pair[1] 产生未定义74 我无法更改复选框状态。我需要将 74 传递给 document.getElementById(pair[1]).checked = true; 才能选中复选框。

任何帮助将不胜感激

试试这个..假设URL只有一个参数。

$(document).ready(function() {
  var url = window.location.href;
  document.getElementById(url.substr(url.indexOf('=') + 1)).checked = true;
});

查看此代码:

$(document).ready(function() {
qsArray = new Array();
var query = "http://localhost/aasd/index.php?category[]=74";
var vars = query.split('&');
for (var i = 0; i < vars.length; i++) {
    var pair = vars[i].split('=');
   $("#"+pair[1]).attr("checked",true); // this will make the checkbox checked when it encounters check box with id 74 I have created a check box with id 74 in my jsfiddle
}
});

链接到小提琴:https://jsfiddle.net/d5wbo91m/2/