2010-02-15 103 views
2

嘿傢伙有一個奇怪的問題,基本上所有的罰款都很好,但是ie7哭了就像一個小寶寶,並拋出上述錯誤 - char:3,'Undefined'爲null或不是一個對象。'未定義'爲空或不是對象

我將字符串拆分爲我需要與另一個字符串進行比較的格式。有一次,我已經分割字符串我進一步分裂了 - 下面的例子:

noteDate = $(xml).find('entry:first published').text(); 
    // split string to get the date - saved in realDate 
    var dateCheck = noteDate.split("T"); 
    var realDate = dateCheck[0]; 
    var timeCheck = dateCheck[1]; 
    var lastSplit = timeCheck.substring(0, timeCheck.length-1); 
    var fullFeedDT = (realDate + " " + lastSplit); 

IE7目前正在呻吟的第四行,但是我有一種感覺,問題可能與3號線 - 由於錯誤有3個字符(char:3)。

如果任何人都可以發現問題,請讓我知道將不勝感激。

乾杯

+1

什麼是'noteDate'? 。 – 2010-02-15 16:06:41

+0

遺憾是另外一個變量 – jonnyhitek 2010-02-15 16:08:50

+0

都在全 \t \t noteDate = $(XML).find( '條目:首次出版')瓦爾文本(); \t \t //拆分字符串以獲取日期 - 保存在realDate中 \t \t var dateCheck = noteDate.split(「T」); \t \t var realDate = dateCheck [0]; \t \t var timeCheck = dateCheck [1]; \t \t變種lastSplit = timeCheck.substring(0,timeCheck。長度-1); \t \t var fullFeedDT =(realDate +「」+ lastSplit); – jonnyhitek 2010-02-15 16:10:15

回答

0

的問題是不是我在解析XML等,但越往下的事實,即在大家回來XML並把它在一個字符串格式的方法 - 解決了這個問題閱讀此線程http://dev.jquery.com/ticket/3143

以及更改xml - text中ajax請求中的數據類型。

歡呼爲每個人輸入此線程

0

插入alert(timeCheck);出錯行之前,我supect你會發現,這是不確定的。

+0

timeCheck定義並帶回正確的價值 - 在FF – jonnyhitek 2010-02-15 16:11:50

0

你可以試着放入一個檢查dateCheck.length是2.其中noteDate來自,並且它總是在格式dateTtime(它是ISO日期格式?)。

+0

謝謝您的回答 - noteDate來自生成一個XML文件(飼料)由Java Web服務,所以總是回來timeDate格式 – jonnyhitek 2010-02-15 16:24:19

0

您是否確定「noteDate」確實包含「T」?看起來,「dateCheck [1]」不包含任何內容,使「timeCheck」等於「未定義」。

您可能需要檢查內容的「timeCheck」(通過FF中的alert或console.log)進行調查。

+0

謝謝,但它的定義 - 添加完整的代碼示例歡呼 – jonnyhitek 2010-02-15 16:14:24

2

您的問題是最有可能在第一行:

noteDate = $(xml).find('entry:first published').text(); 

出於某種原因,你的XML數據沒有被正確地在IE加載。

+1

乾杯,我只是測試,看看ie7可以看到數據 - 唉,它似乎無法獲得數據 - 做了一個警告,並提出了一個可愛的空白警示框在IE7 - FF仍然很好。 grrrr – jonnyhitek 2010-02-15 16:22:35

+0

我要關閉這個線程 - 因爲它看起來像你所建議的問題是我解析xml的方式。乾杯丹尼爾 – jonnyhitek 2010-02-15 16:32:06

+1

別忘了掩蓋這個答案接受,如果它幫助你 – 2010-02-17 10:30:14

0

我會先爲腳本中的每個變量添加一個警報,以報告它的值和類型(alert((typeof varInstance)+': "'+varInstance+'"');),以確保它在IE中的預期。然後id進行相應的調試。這就是說,我會猜測它是如丹尼爾所建議的,並且是xml的一個問題。

相關問題