0

メンバーシップベータシステムを実装するためにangularjsv0.9を使用しています...

現在、私は2つのコントローラーを持っています...

var selected = []
function Ctrl1(){
    checkCheckboxesByIds(selected );
    //users will select a list of values from checkboxes..
    $('#renewlist input:checked').each(function() {
    selected.push($(this).attr('value'));
    });    
}

function Ctrl2(){
//call an api function with "selected"
}

ただし、Ctrl2のhtmlでは、ユーザーがチェックボックスを誤って選択した場合に、前に戻ることを選択できます。

私はグーグルでこの関数を見つけました

function checkCheckboxesByIds(ids) {
 $.each(ids, function(i, id) {
    $('#member-' + id).attr('checked', 'checked'); 
 });
}

ただし、これは75%の時間しか機能しません。前後に繰り返しクリックすると、チェックボックスがチェックされないことがあります...

とにかく私はそれをもっと絶対確実にすることができますか?

前もって感謝します。

4

1 に答える 1

0

@wireyが述べたように

チェックされたプロパティを設定するには、実際には.prop('checked'、true)を使用する必要があります。

function checkCheckboxesByIds(ids) {
 $.each(ids, function(i, id) {
    $('#member-' + id).prop('checked',true); 
 });
}

6回目に送信して返送すると、チェックボックスがオンにならないため、まだ確実ではありません。しかし、これは私の目的には十分です。

ありがとうございました。

于 2012-10-27T06:10:34.537 に答える