JQuery .editable のテーブルがありますが、編集が成功するとフィールドが緑色または赤色に点滅して編集が失敗し、元のフィールドの色に戻るように設定しています。
コードは次のとおりです。
$('.editablePM').editable('<?php echo base_url();?>ratesheet/editrowpeakMin/<?=$editable['url'];?>/',
{
callback: function(value){
$(this).data('bgcolor', $(this).css('background-color'));
if(value == this.revert)
{
$(this).animate({ backgroundColor: "red", color: "white" }, 400);
$(this).animate({ backgroundColor: $(this).data('bgcolor'), color: "black" }, 400);
}
else
{
$(this).animate({ backgroundColor: "green", color: "white" }, 400);
$(this).animate({ backgroundColor: $(this).data('bgcolor'), color: "black" }, 400);
}
},
name : 'value',
style : 'display:inline; position:relative; right:120px;',
width : '100px',
height: '16px',
onblur : 'submit',
});
すべてが正常に機能しますが、フィールドが編集時に適切な色に変更され、戻ったときに、親 css がなくなり、採用された js css がなくなります。
例えば
選択した行を黄色で強調表示する行にホバー機能があります。行の選択を解除して (変更を投稿)、アイコンを行に残した場合、最初のセルの背景は黄色のままです。
同様に、ホバーをオフにしているときにセルの変更を「送信」すると (黄色ではないため)、セルの背景は正しい色に戻りますが、行の強調表示には応答しなくなります。
コードで膨大な量のバリエーションを試したので、何か不足していると思います。
http://jsfiddle.net/qrA6y/ = それが起こっていることを示す試み。
情報を無視します。フィールドを編集して、その行にカーソルを合わせたまま選択を解除すると、黄色のままになり、同様に、黄色ではないときに選択を解除しても、黄色にホバーしなくなりました。