嘿家伙有一个奇怪的问题,基本上一切都很好,但是ie7就像一个小宝宝一样哭并抛出上述错误 - 字符:3,'未定义'为空或不是对象。
我将字符串拆分为需要与另一个字符串进行比较的格式。一旦我拆分了字符串,我就将其拆分 - 例如:
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)。
如果有人能发现问题,请告知我们将不胜感激。
干杯
答案 0 :(得分:2)
您的问题很可能在第一行:
noteDate = $(xml).find('entry:first published').text();
由于某种原因,您的XML数据未在IE中正确加载。
答案 1 :(得分:0)
在违规行之前插入alert(timeCheck);
,我怀疑你会发现它未定义。
答案 2 :(得分:0)
您可以尝试检查dateCheck.length是否为2. noteDate来自何处,是否始终采用dateTtime格式(是ISO日期格式?)。
答案 3 :(得分:0)
您确定“noteDate”确实包含“T”吗?它的外观,“dateCheck [1]”不包含任何内容,使“timeCheck”等于“undefined”。
您可能需要查看“timeCheck”内容(通过FF中的alert或console.log)进行调查。
答案 4 :(得分:0)
我首先会为脚本中的每个变量添加一个警报,以报告其值和类型(alert((typeof varInstance)+': "'+varInstance+'"');
),以确保它在IE中的预期。然后id进行相应的调试。那就是说我会像Daniel那样猜测它是xml的一个问题。
答案 5 :(得分:0)
问题不在于我解析xml等的方式,而是因为ie取回xml并将其放入字符串格式这一事实 - 在阅读此帖子http://dev.jquery.com/ticket/3143后解决了问题
并且还从xml - text更改ajax请求中的数据类型。
为每个输入此主题的人欢呼