簡體   English   中英

IE6的jQuery ajax問題

[英]jQuery ajax problem with IE6

嗨,我的問題有點有線:

我的$ .ajax成功處理程序如下所示:

function(data){
        alert(data);
}

很簡單,是嗎?

問題是數據總是3個字符長-無論服務器發送了什么! 字符:31 65535 8(使用charCodeAt())。

在其他瀏覽器中(甚至在IE 8中),一切正常。

我在完整的處理程序中查看了xhr.responseText-相同的結果。

UPDATE完整的http響應

HTTP/1.1 200 OK
Date: Sun, 07 Feb 2010 13:35:39 GMT
Server: Apache/2.2.12 (Ubuntu)
X-Powered-By: PHP/5.2.10-2ubuntu6.4
Set-Cookie: 1111111111111111=UjVXb1Q3WTdUIQ8jXmALbA88VzpRcVcgBzMDcldyUmtWawAyAFpQP1IwASEAbFh%2FDjoLZ1RiBWlWdwBnUGMHZlU2UGBTZFA5B2UMMlJgC29SbVdjVDRZOVRsDzReaQtuDzpXZVFjV2UHYwM1VzNSNlYzAG4AMVAwUjUBIQBsWH8OOgtlVGAFaVZ3AD5QIgdcVWVQNlNhUHIHMAwjUiQLL1JvVyZUOVk8VGkPal54C2wPNVcyUX1XYgdgAzlXL1IzVioAbQA3UG9SdgE4ACRYNg4xC2RUagVxViAAJFA3B3FVW1AzU2JQZQc7DCRSdQs2UidXb1Q2WT1UYA9yXhcLMg92V2lRP1c%2FBzcDLlc1UixWNAB8AC1QNVI7AW4AJ1htDnQLPVQyBT9WMABsUHIHTlVXUBtTQFAgB20MflJnCzZSdFcCVGpZY1Q%2BDz9eLQsuDyxXTlEHV3MHYAMvVzBSOVYmAGcAdlBsUmUBMABtWC4ObAs1VCMFJ1YKADZQMQd3VW1QJFNsUHQHLAxyUmwLflJuV2RUM1k3VHgPYV5oC2sPOVc1UWdXagdgAzBXOVIgVj8AIQ%3D%3D; expires=Tue, 07-Feb-2012 13:35:39 GMT; path=/
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 21
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/html

1

更新! 好吧,暫時的問題? 通過禁用.htaccess中的gzip解決

您得到的字符看起來很奇怪,但這可能是BOM嗎? 它不是本文列出的內容,但也許getCharCode()出錯了。

在這種情況下,您將必須檢查調用的腳本以請求數據。 嘗試顯式保存而不使用BOM表。

這通常是對請求的內容/顯示的內容進行適當編碼的問題。

請確認兩者使用相同的格式。

盡管ajax總是在UTF-8中完成,但某些實現卻很奇怪,並且它們不允許傳遞非ascii字符。 您必須將它們更改為實體。

如果您僅傳遞一個字符仍然遇到問題-可能是Pekka提到的BOM。 您必須先保存您的PHP文件,不得包含任何空格

第二件事是您可能在php文件的末尾輸出了一些內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM