javascript onclick函数调用传递表单名而不带引号的结果 函数调用了here(value){console.log(value);}

javascript onclick函数调用传递表单名而不带引号的结果 函数调用了here(value){console.log(value);},javascript,Javascript,从上面的代码中,onclick调用错误地传递了没有引号的表单名称。但是,输出显示整个表单DOM元素。不知道它是如何得到表单元素的 任何帮助都会对我学习javascript方面更有用 提前感谢 您的'value'变量中已经有表单元素。您看到元素的html被记录的原因是console.log调用元素上的.toString()方法 此代码演示了“value”引用表单元素: <html> <head> <script>

从上面的代码中,onclick调用错误地传递了没有引号的表单名称。但是,输出显示整个表单DOM元素。不知道它是如何得到表单元素的

任何帮助都会对我学习javascript方面更有用


提前感谢

您的'value'变量中已经有表单元素。您看到元素的html被记录的原因是console.log调用元素上的.toString()方法

此代码演示了“value”引用表单元素:

<html>
    <head>
        <script>
            function calledHere(value) { console.log(value); }
        </script>
    </head>
    <body>
        <form name="test">
            <input type="button" value="click!" onclick="calledHere(test);" >
        </form>
    </body>
</html>

函数调用了here(value){value.style.backgroundColor=“red”}


这个答案解释了变量的范围;为什么您可以将表单名称传递给函数:

您将来可能应该将其更改为
,如果您将代码添加到jsfiddle.net,其他成员可以更轻松地给出答案。感谢您的快速回复。
<html>
    <head>
        <script>
            function calledHere(value) { value.style.backgroundColor = "red" }
        </script>
    </head>
    <body>
        <form name="test">
            <input type="button" value="click!" onclick="calledHere(test);" >
        </form>
    </body>
</html>