我想使链接工作,我们点击使用JavaScript更改网站的语言。下面是HTML代码:JavaScript代码不能正常工作IE8
'<form action="" method="post" name="currlang">'.
'<input type="hidden" name="languageval" value="'.$session->value("language").'"/>'.
'<a onclick="langa(this, \'en\');" class="langs'.($session->value("language")=='en'?" active":"").'" id="en"></a>'.
'<a onclick="langa(this, \'it\');" class="langs'.($session->value("language")=='it'?" active":"").'" id="it"></a>'.
'<a onclick="langa(this, \'pl\');" class="langs'.($session->value("language")=='pl'?" active":"").'" id="pl"></a>'.
'</form>'.
这里的JavaScript:
function langa(obj, valu) {
document.getElementsByName("languageval")[1].value=valu;
document.getElementsByName('currlang')[1].submit();
}
该脚本适用于新的浏览器(Firefoxe,歌剧,铬,IE9),但在IE8测试时,它提供了一个优良错误:
"'document.getElementsByName(...).1' is null or not an object".
经过一番研究,我发现,getElementsByName()
不受IE8及以上,也许解决办法是使用jQuery支持,这是我需要帮助。 我该如何使用jQuery或没有它的工作?
您只有一个名为'languageval'的输入,因此其索引是[[0]',而不是'[1]' –
,您可以随时在输入上放置一个ID并使用getElementById。确保ID是唯一的 – Huangism
,因为你在标签中指定了jquery,你怎么没有在你的代码中实际使用它? – Spudley