呼び出しで div の内容を更新しようとしてい$.get
ますが、失敗していますie(9).
はjs
これです
function UpdateElementOfParent(box_id, page_ref, template_ref)
{
$.get("get_content.php", { box_id: box_id, page_ref: page_ref, template_ref:template_ref } )
.done(function(data) {
$('#'+box_id).html(data);
});
}
で、get_content.php
これは
<?php
include("connect.php");
$page_ref = $_GET['page_ref'];
$template_ref = $_GET['template_ref'];
$box_id = $_GET['box_id'];
$sql = mysql_query("SELECT * FROM site_content WHERE page_ref='$page_ref' AND template_ref='$template_ref' AND box_id='$box_id' AND box_type='text'");
while($row=mysql_fetch_array($sql))
{
echo stripslashes($row['content']);
}
?>
それはうまく動作しますfirefox/chrome/safari and opera.
PHPはデータベースを更新しますが、div ("#"+box_id)
更新しie
ません(ie9
手元にあるだけなので、9つだけなのか他のバージョンなのかわかりません)
手がかりはありますか?
クイックアップデート
つまり、前の $.get 呼び出しからのデータがキャッシュに保持されているようです。基本的に、画面に div があり、ユーザーがボタンをクリックすると、レイヤーが開き、nicedit で編集可能なテキストエリアが表示されます。textarea に $.get が入力され、ユーザーが [保存] をクリックすると、レイヤーが非表示になり、親ページの元の div が同じ $.get 呼び出しで更新されます。
つまり、コンテンツを変更すると、データベースは更新されますが、div は更新されず、レイヤーを開くと、まだ古いデータが表示されます。
最初の $.get 呼び出しはこれです
$.get("get_content.php", { box_id: box_id, page_ref: page_ref, template_ref:template_ref } )
.done(function(data) {
document.getElementById("edit_content").value=data;
area1 = new nicEditor({fullPanel : true}).panelInstance("edit_content",{hasPanel : true});
});
警告されたデータはIEで更新されたテキストを表示しないため、間違いなく $.get 呼び出しと関係があります