2014-09-03 83 views
-5

我不明白我的代碼中發生了什麼。我想在複選框被選中時顯示一個模式框。 我顯示模式框,但複選框保持未選中 你能幫助我嗎? 在此先感謝!如何檢查顯示模式框後的複選框?

<td colspan="3"><input class="solo{{idioma.id}}" type="checkbox" id="mantenerhorario" name="mantenerhorario" {% if mantenerhorarioanterior == 1 %} checked {% endif %} 
data-target="#myModal" data-toggle="modal" > Mantener horario del año anterior</td> 

$("#mantenerhorario").click(function(){ 
     $('body').append('<div id="modalMantenerHorario" class="modal hide fade" role="dialog" 
     aria-labelledby="dataConfirmLabel" aria-hidden="true"> 
     <div class="modal-header"> 
     <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> 
     <h3 id="myModalLabel">Aviso</h3></div><div class="modal-body"><p>my msg.</p></div> 
     <div class="modal-footer"><button class="btn" data-dismiss="modal" aria-hidden="true">Aceptar</button></div></div>'); 
     $('#modalMantenerHorario').find('.modal-body').text($(this).attr('data-confirm')); 
     $('#modalMantenerHorario').modal({show:true}); 
     $("#mantenerhorario").attr('checked', true); 
    }); 
+1

*「我想顯示一個模式框,當一個複選框被選中,並勾選複選框」* - 沒有意義。你已經檢查過它顯示模型,那麼爲什麼你應該再次檢查它? – 2014-09-03 15:54:37

+0

我的複選框顯示模式框,但未勾選複選框。你明白嗎? – Freenando 2014-09-03 15:57:43

+0

@TJ他意味着他的複選框不會在彈出模態框後保持檢查狀態 – AlexGreg 2014-09-03 16:00:37

回答

1

對於複選框使用你應該使用的道具功能,所以

$("#mantenerhorario").attr('checked', true); 

必須當你在同一個對象,你可以做的情況下使用該功能成爲

$("#mantenerhorario").prop('checked', true); 

$(this).prop('checked', true); 
+0

感謝Telmo,我已經測試過您的代碼,但它不起作用。這是非常奇怪的 – Freenando 2014-09-03 16:05:00

+0

檢查了你的代碼。您沒有關閉輸入標籤。也許就是這樣。你也應該用複選框來使用prop函數。 – 2014-09-03 16:07:35

0

我找到了!

我已刪除了這部分代碼

數據目標= 「#myModal」 數據切換= 「莫代爾」

從這裏

<input class="solo{{idioma.id}}" type="checkbox" id="mantenerhorario" name="mantenerhorario" 
{% if mantenerhorarioanterior == 1 %} checked {% endif %} data-target="#myModal" 
data-toggle="modal" > 

和它的工作原理。

<input class="solo{{idioma.id}}" type="checkbox" id="mantenerhorario" name="mantenerhorario" 
{% if mantenerhorarioanterior == 1 %} checked {% endif %}> 

$("#mantenerhorario").click(function(){ 
    $('body').append('<div id="modalMantenerHorario" class="modal hide fade" role="dialog" 
    aria-labelledby="dataConfirmLabel" aria-hidden="true"> 
    <div class="modal-header"> 
    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> 
    <h3 id="myModalLabel">Aviso</h3></div><div class="modal-body"><p>my msg.</p></div> 
    <div class="modal-footer"><button class="btn" data-dismiss="modal" aria-hidden="true">Aceptar</button></div></div>'); 
    $('#modalMantenerHorario').find('.modal-body').text($(this).attr('data-confirm')); 
    $('#modalMantenerHorario').modal({show:true}); 

});