我正在尝试制作一个非常简单的CMS系统,到目前为止一切顺利。
但是现在当我试图将编辑页面加载到div
(.load
- jQuery)时,IE不会显示它,Firefox会这样做。
这是我的加载代码
function edit_item(id){
$('#row_'+id).load("actions/edit.php?id="+id, function(response, status, xhr) {
if (status == "error") {
var msg = "Sorry but there was an error: ";
$('#row_'+id).html(msg + xhr.status + " " + xhr.statusText);
}
});
}
这是我要加载的页面
<?php
include('connect.php');
$item = resultset;
?>
<script>
$(function() {
$("#datepicker").datepicker();
$("#datepicker").datepicker("option", "dateFormat", "yy-mm-dd");
var currentdate = $("#currentdate").val()
$("#datepicker").datepicker('setDate', currentdate);
});
</script>
<form method="POST" action="actions/update.php">
<input type="hidden" id="currentdate" value="<?=$item['datum']?>">
<table style="border: 1px solid black; margin-left: 10px; width: 620px;">
<tbody>
<tr>
<td>Titel</td>
<td><input type="text" name="titel" class="input" style="width: 560px;" value="<?=$item['titel']?>"></td>
</tr>
<tr>
<td>Datum</td>
<td><input type="text" name="datum" class="input" id="datepicker" style="width: 560px;"></td>
</tr>
<tr>
<td>Bericht</td>
<td><textarea name="inhoud" class="input" style="width: 560px; height: 300px;"><?=$item['inhoud']?></textarea></td>
</tr>
<tr>
<td>Foto's</td>
<td>
<input type="file" name="foto[]">
<input type="file" name="foto[]">
<input type="file" name="foto[]">
<input type="file" name="foto[]">
<input type="file" name="foto[]">
<input type="file" name="foto[]">
</td>
</tr>
<tr>
<td colspan="2"><input type="submit" id="toevoegen" value="Updaten" class="input" style="float:right; margin-right: 5px; margin-top: 5px;"></td>
</tr>
</tbody>
</table>
<input type="hidden" name="id" value="<?=$_GET['id']?>">
<input type="hidden" name="aktie" value="item">
</form>
Internet Explorer给了我这个错误:
抱歉,但是出现了错误:0错误:无法完成 由于错误c00ce56e而导致的操作。
解决方案: header('Content-Type: text/html; charset=UTF-8');
正在做这个技巧,但是IE已经缓存了。当我清除它 - 它再次开始工作,谢谢!
答案 0 :(得分:4)
Google搜索错误代码似乎表明问题是XHR响应的编码。
如果将XMLHttpRequests的编码头设置为header('Content-Type','text / html; charset = utf8');而不是标题('Content-Type','text / html; charset = UTF-8'); IE7会给出漂亮而明确的错误c00ce56e。
答案 1 :(得分:0)
从2.6版本开始,MSXML将所有XML文档通过Mlang.dll传递给 验证他们的编码。如果Mlang.dll遇到非标准编码 字符串,它返回错误。
“ISO8859_1”是Latin-1字符的规范表示 Java语言和类库中的编码字符串。标准 但是,由互联网号码分配机构定义, 是“ISO-8859-1”,这不是一个公认的别名。
http://support.microsoft.com/kb/304625
检查内容类型的字符集。