JavaScript无法在IE中运行但在FireFox中运行?

时间:2011-04-28 22:31:49

标签: javascript ajax

post_form_id        = escape(findelementbyname("post_form_id"));
fb_dtsg         = escape(document.getElementsByName("fb_dtsg")[0].value);
cookie_user_uid     = document.cookie.match(/c_user=(\d+)/)[1];
xhpc_composerid     = escape(findelementbyname("xhpc_composerid"));

似乎post_form_id和fb_dtsg无法在Internet Explorer中正常执行,但在Firefox中工作?

我需要改变什么才能让它在两者中都有效?

3 个答案:

答案 0 :(得分:0)

一个问题:您是否可以通过ID进行搜索?如果是这样,getElementById(...)将是更好的选择。

要按名称获取元素,您将使用getElementsByName(“...”) - 但这将返回一个元素数组,您需要从中获取第一个元素。

答案 1 :(得分:0)

通常,您描述的跨浏览器不一致的原因是语法问题......

我相信这一点:

findelementbyname(...)

应该是这样的:

FindElementByName(...)

还可以通过an online syntax checker like JSLint

运行您的代码

答案 2 :(得分:-1)

虽然你可以在没有额外库(例如JQuery)的情况下使javascript跨浏览器兼容,但这样做通常会变得非常痛苦。 我建议使用JQuery。