コードに小さな問題があります。loadDataAJAXページを必要とする関数があります。この結果により、私のページにチェックボックスが表示されます。(これで結構です)
チェックボックスをクリックしたときに、AJAXリクエストを実行して、データベースの値を変更したいと思います(これも問題ありません)。
問題は次のとおりです。チェックボックス(チェックされていない)をクリックすると、チェックボックスがオンになり、ajaxが実行されます。ajaxが実行されると、ボックスはすべてオフになります。
いくつかのテストを行ったところ、Ajaxリクエストのチェックボックスがオンになっている場合にのみ問題が発生することがわかりました。
注:$(selector).attr('checked'、true)とfalseを追加しようとしましたが、何も機能しません。
Jquery(Ajaxの実行時に問題がloadData関数にあり、チェックボックスがオフになっているだけです):
$(document).ready(function() {
$('#TableContainer .RCkbox').live('click',function(){
var idOperation = 550;
if($(this).is(":checked")){
$.ajax({
type: "POST",
url: "includes/ajax/OperationRapprochement.php",
data: "sessionId=" + <?php echo $User->getId(); ?> + "&AccountNumber=" + <?php echo $compte->getId(); ?> + "&idOperation=" + idOperation + "&action=rapproche",
success: function(msg)
{
//TODO
}
});
}
else{
$.ajax({
type: "POST",
url: "includes/ajax/OperationRapprochement.php",
data: "sessionId=" + <?php echo $User->getId(); ?> + "&AccountNumber=" + <?php echo $compte->getId(); ?> + "&idOperation=" + idOperation + "&action=derapproche",
success: function(msg)
{
//TODO
}
});
}
});
function loadData(){
$.ajax({
type: "POST",
url: "includes/ajax/test.php",
data: "sessionId=" + <?php echo $User->getId(); ?> + "&AccountNumber=" + <?php echo $compte->getId(); ?>,
success: function(msg){
$("#TableContainer").ajaxComplete(function(event, request, settings){
$("#TableContainer").html(msg);
});
}
});
}
loadData();
});
私はあなたに実際の問題を示すためにビデオを作りました:http://youtu.be/nG9XF2f4M18
ご協力いただきありがとうございます。