0

我对 javascript 函数有疑问:

JS代码:

function ouvrirPopupAvecImprEcran(){
    var name= document.getElementById("myForm:currentName").value;
    var code= document.getElementById("myForm:currentCode").value;
...
}

此函数适用于 Chrome,但当我尝试使用 firefox 时,函数 getElementById 返回“未定义”。我查看了生成的 HTML 输出以查看 id 是否已经存在,但它们不存在。

生成的 HTML 输出:

<form id="myForm" name="myForm" method="post" action="/MyProject/p/handleTest.jsf" enctype="application/x-www-form-urlencoded">
    <select id="myForm:currentName" size="1" name="myForm:currentName"> 
    ...
    </select>
    ...
    <input name="myForm:j_idt556" value="Print" onclick="return ouvrirPopupAvecImprEcran();" type="submit">
    ...
    <input id="myForm:currentCode" name="myForm:currentCode" value="Hey" type="hidden">
</form>

我不明白为什么这段代码在 Firefox 中不起作用。

请问你能帮帮我吗?

谢谢你。

4

2 回答 2

-1

可能是 Firefox 在 ID 字符串中的冒号有问题。你能试着把它放在\\前面来逃避冒号吗?

于 2013-11-04T11:02:27.983 回答
-1

将“:”更改为“_”

在 HTML 中

在javascript中

var name= document.getElementById("myForm_currentName").value;

尝试这个

于 2013-11-04T12:57:31.270 回答