Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 传递到JS函数中的参数为;“未定义”;关于IE和Safari_Javascript_Html_Forms_Internet Explorer_Safari - Fatal编程技术网

Javascript 传递到JS函数中的参数为;“未定义”;关于IE和Safari

Javascript 传递到JS函数中的参数为;“未定义”;关于IE和Safari,javascript,html,forms,internet-explorer,safari,Javascript,Html,Forms,Internet Explorer,Safari,通过下面的HTML和Javascript代码,我发现在iOS上的IE11和Safari中,表单没有传递“choice”单选按钮的值。使用alert()函数,我可以看到“answer”是未定义的,而在Chrone和Firefox中,它的预期值是“right”或“error” 有人对如何解决这个问题有什么建议吗? 进一步说:为什么它的行为不像我在IE和Safari中预期的那样 HTML: 这有点复杂,但您必须迭代才能在Internet Explorer中工作 我在下面的onclick事件处理(跨浏览

通过下面的HTML和Javascript代码,我发现在iOS上的IE11和Safari中,表单没有传递“choice”单选按钮的值。使用alert()函数,我可以看到“answer”是未定义的,而在Chrone和Firefox中,它的预期值是“right”或“error”

有人对如何解决这个问题有什么建议吗? 进一步说:为什么它的行为不像我在IE和Safari中预期的那样

HTML:


这有点复杂,但您必须迭代才能在Internet Explorer中工作

我在下面的
onclick
事件处理(跨浏览器)版本中添加了一个id并删除了参数:

函数checkThing(){
var answers=document.getElementById('myform').elements['choice'];
对于(变量i=0;i

选择一

选择二


IE似乎没有将名字注册为globals,但Firefox和Chrome却注册为globals,只是猜测而已
    <form>
        <p><label><input type="radio" name="choice" value="right" />Choice One</label></p>
        <p><label><input type="radio" name="choice" value="wrong" />Choice Two</label></p>
        <p><input type="button" value="Check Answer" onclick="checkThing(choice.value)"></p>
    </form>
function checkThing(answer){
    if(answer == "right"){
        //Show one thing
    }
    else if(answer == "wrong"){
        //show another thing
    }
}