如何直接从onclick将变量从html传递给js

时间:2016-02-22 11:49:43

标签: javascript html

我想将变量从html发送到javascript文件,点击一些按钮。我可以这样写:

onclick="xFunc(document.getElementsByName("x").value,document.getElementsByName("y").value,document.getElementsByName("z").value);"></p>

因为html里面的javascript不起作用!我尝试: <script>代码和<script type="text/javascript">代码及<script language ="javascript">代码,无效。

2 个答案:

答案 0 :(得分:1)

您必须使用单引号字符而不是引号字符。此外getElementsByName返回一个数组。您可以根据要执行的操作从数组中选择一个元素,也可以使用getELementById

// passing just one element of array
    <p onclick="xFunc(document.getElementsByName('x')[0].value,document.getElementsByName('y')[0].value,document.getElementsByName('z')[0].value);"></p>

// passing the whole array 
    <p onclick="xFunc(document.getElementsByName('x')[0],document.getElementsByName('y')[0],document.getElementsByName('z')[0]);"></p>


// Using getElementById
// in this case you must use Id attribute for your elements
//  <mytag  id="x"></mytag>
<p onclick="xFunc(document.getElementById('x'),document.getElementById('y'),document.getElementById('z'));"></p>

答案 1 :(得分:0)

尝试以下任何一项:

如果您想从标签名称获取价值。

onclick="xFunc(document.getElementsByName('x')[0].value,document.getElementsByName('y')[0].value,document.getElementsByName('z')[0].value)"

如果您想从标签ID获取价值。我更喜欢这个。

onclick="xFunc(document.getElementById('x').value,document.getElementById('y').value,document.getElementById('z').value)"

注意:Id与名称

不同