2016-11-25 23 views
0

ページリロード後にチェックボックスのステータスを保存する必要があります。私のクエリ文字列:ページリロード後の状態チェックボックス

Mathes=1&Mathes=2&Mathes=3&Rols=2&Users=1&....... 

このデータはどのように入手できますか?私はいくつかのコードを書いた:

$(document).ready(function() { 
    var value = window.location.href.match(/[?&]Matches=([^&#]+)/); 
    $('input[name=Mathes]').each(function (index) { 
     if (value[1] === $(this).val()) { 
      $(this).attr('checked', 'checked'); 
     } 
    }); 
}); 

しかし、私は最初の要素を得ることができます。どのようにすべてのパラメータでそれを得ることができますか?

答えて

0

あなたのMathesを取得するために$.url().param('Mathes');を使ってみましたか?

0

アレクセイ、同じ名前を持つ複数のチェックボックスを作成したい場合は名前のような配列であるよりも、概念を理解しよう:

<input type="checkbox" name="category[]" class="category" value="1" /> 
<input type="checkbox" name="category[]" class="category" value="2" /> 
<input type="checkbox" name="category[]" class="category" value="3" /> 
<input type="checkbox" name="category[]" class="category" value="4" /> 
<input type="checkbox" name="category[]" class="category" value="5" /> 

と同様に、その値を取得する:

var category= []; 
$('input[class="category"]').each(function(){ 
    if($(this).is(':checked')) 
    { 
     category.push($(this).val()); 
    } 
}); 
0

あなたは、あなたのJSコードでこのような何かを試してみることができ

$(document).ready(function() { 
    var value = $(location).attr('href').split("?").pop(); 
    console.log("url"+$(location).attr('href')) 
    var strparams=value.split("&"); 
    for(var i in strparams){ 
     strparams[i]=strparams[i].substring(strparams[i].indexOf("=")+1,strparams[i].length); 
    } 

    console.log(""+strparams); 
    $('input[name=mathes]').each(function (index) { 
     for(var j=0;j<strparams.length;j++){ 
     if (strparams[j] === $(this).val()) { 
      $(this).attr('checked',true); 
     } 
     } 
    }); 
}); 
  • 私は「&」に基づいて、第1のURLを分割して、=をもとにして
  • が、私はループのための別のものを追加した値は、チェックボックスの値と、URL内のすべての値をチェックするために持っている
関連する問題