2016-05-17 33 views
0

私はこのようになりますモーダル持っている:いくつかのチェックボックスをチェックし、Add Users to New Groupモーダル閉じをクリックすると、私がチェックチェックボックスの値をキャッチしていた後された後 enter image description hereモーダルを閉じた後にチェックボックスを保持する方法は?

を。しかし、今度は、モーダルを閉じる前にチェックされたチェックボックスを再度開いて、モーダルを開いた後にチェックしておく必要があります。チェックしたチェックボックスのどれがチェックされているかを確認することができます。ここに私が試したものがあります:

$(document).ready(function(){ 
    $('#addNewMembers').click(function(){//click on Add Users to New Group button 
    var selected = $('#ovdjeSuSelektovani').val();//im putting value of all checked checkboxes inside hidden input, so this is how i'm retrieving those values 
    console.log(selected); 
    if(selected!='') { 
     var arrayOfSelected = selected.split(","); 
     for(var i=0;i<arrayOfSelected.length;i++){ 
      $('checkbox value=['+arrayOfSelected[i]+']').prop('checked',true);//did not recognize the jQuery selector 
     } 
     var numberOfSelected=arrayOfSelected.length; 
     $('#numberOfMembers').text(numberOfSelected) 
    }else{//neko upozorenje  
    }  
}); 

動作しませんでした。 試み2号:

$("#modal-6 input[type='checkbox']:checked").each(function() { 
     this.prop('checked',true); 
}); 

モーダルを再開した後、何もしませんでした。誰かが助言を持っているなら、私はそれを試してうれしいです。

+2

利用のlocalStorage:

$('#modal-6 input[type='checkbox']').is('checked').each(function() { $('#ovdjeSuSelektovani').val($('#ovdjeSuSelektovani').val() + $(this).attr('id') + ','); }); $('#ovdjeSuSelektovani').val($('#ovdjeSuSelektovani').val().replace(/,$/g,'')); //removes training comma 

ポップアップが、その後再ロードし、これを試してみてくださいそのチェックボックスの状態 – guradio

+0

あなたの試行#2なぜあなたは ':checked'を使用していますか? –

+0

@Idan bボタンをクリックすると、チェックされたチェックボックスはすべてその状態を保持するはずです。 '.prop'で考えればうまくいくでしょう。 – Ognj3n

答えて

2

にはhtmlタグcheckboxありませんので、これは

$('checkbox value=['+arrayOfSelected[i]+']').prop('checked',true); 

が、これは代わりに

$('input[type=checkbox][value='+arrayOfSelected[i]+']').prop('checked',true); 

が、それはチェックボックスを選択し、あなたが明示的にオフにするまで、彼らが選択したままにしますしようと動作しません。

+0

コンソールは 'Uncaught Error:構文エラー、認識できない式:input [type = checkbox] value = [10207252567926988] ' – Ognj3n

+0

を修正しました。今すぐお試しください –

+0

今すぐお仕事しましたか? –

0

セッション記憶域のチェックされたチェックボックスごとにモーダルストア固有の識別子を閉じるとき。一意的な識別子は、例えばFacebook IDとすることができる。

セッションストレージhereについて詳しく読むことができます。あなたは本当に参考になるだろう二つの方法があります:

sessionStorage.setItem

sessionStorage.getItem

セッションストレージは永続的ではないので、私が代わりにローカルストレージのセッションストレージを使用することをお勧めしますブラウザーウィンドウが閉じられた後に、チェックされたチェックボックスを維持する必要はないでしょう。場合

はあなたがthis

0

ストア$(「#ovdjeSuSelektovani」)で唯一の選択チェックボックスのidの確認することができ、ローカルストレージを使用するか、それについての詳細を学びたいたい。ヴァル()(たとえば、 「ID1、ID3、ID4」)、いない状態:修正するために状態を保存した状態と開いた使用上を保存する

$('#ovdjeSuSelektovani').val().split(',').each(function(id) { 
    $('#' + id).prop('checked', true); 
} 
関連する問題