ボタンをクリックするだけでダイアログをロードするページがあります。
function editShowSchedule(emId){
$(".ui-dialog-content").dialog("close");
var url = "inc/ajax/schedule-editShowSchedule.php?emId="+emId+"&stationId="+<?php echo $stationId;?>;
var container = '<div id="somediv" title="Modifier l\'horaire d\'une émission"></div>';
$(container).load(url).dialog({
//modal:false,
height: 600,
width: 600,
resizable: false,
buttons: { "Annuler": function() { $(this).dialog("close"); },
"Sauvegarder": function(){ saveShowSchedule();} }
});
}
次に、そのダイアログで、ドロップダウンボックスで.change()をトリガーして、選択した要素に関連する情報を読み込みます。
<?php
$emId = $_POST['emId'];
$stationId = $_POST['stationId'];
?>
[...]
$(document).ready(function() {
$("#selectShow").unbind('change');
$("#selectShow").change(function(){
$("#showTimelines").html('En chargement');
var emId = $("#selectShow").val();
var stationId = <?php echo $stationId;?>;
var params = {emId:emId,
stationId:stationId}
$.post('inc/ajax/schedule-getAllTimelinesByEmId.php',params, function(data){
alert('getTimelineByEmId');
$("#showTimelines").html(data);
$(".button, button, input:submit, input:button").button();
enableAddRecurrenceInPeriod();
enableRecurrenceCloseBox();
},"html"
);
})<?php if($emId > 0){?>.change()<?php }?>;
});
初めての場合は、正常に動作します。
しかし、ダイアログボックスを閉じてクリックしてもう一度開くと、アラートは実際に機能しますが、$( "#showTimelines")。htmlには何も表示されません(読み込み中のメッセージ:$( "#showTimelines"も表示されません)。 ).html('En Chargement');)、Firefoxで表示され、ドキュメントが読み込まれた後にのみ投稿しましたが...
誰もがこれを修正する理由および/または方法を知っていますか?