Javascript函数似乎总是接收相同的输入

Javascript函数似乎总是接收相同的输入,javascript,html,Javascript,Html,我用这段代码奋斗了好几个小时。无论我做什么选择,输出总是像我选择了第一行一样(set17、gpio17和第一个组合框中的任何内容) 我尝试将单引号改为双引号,尝试了不同的浏览器,并为每行定义了不同的AjaxFunction,但结果总是一样的 例如,当更改组合框时,预期结果是带有GPIO24行值的警报框 有人能告诉我我做错了什么吗 顺便问一下,是否有任何方法可以将$item和$action变量传递给“document.getElementById”,而无需创建文本框 提前谢谢 <html x

我用这段代码奋斗了好几个小时。无论我做什么选择,输出总是像我选择了第一行一样(set17、gpio17和第一个组合框中的任何内容)

我尝试将单引号改为双引号,尝试了不同的浏览器,并为每行定义了不同的AjaxFunction,但结果总是一样的

例如,当更改组合框时,预期结果是带有GPIO24行值的警报框

有人能告诉我我做错了什么吗

顺便问一下,是否有任何方法可以将$item和$action变量传递给“document.getElementById”,而无需创建文本框

提前谢谢

<html xmlns="http://www.w3.org/1999/xhtml"  xml:lang="en">
<body>

<script type="text/javascript">
function ajaxFunction(){
var action = document.getElementById('action');
var item = document.getElementById('item');
var value = document.getElementById('value');
alert("You entered: " + " " + action.value + " " + value.value + " " + item.value )


}
</script>


<center><b>AJAX TEST PAGE</b><br/><br/><table border="1"><tr>

<td>gpio17</td><td> Sensor Wireless #3 <td>
<form name='gpio17'>
<select id='value' onchange='ajaxFunction()'>
<option value= value_option_1> value_option_1</option>
<option value='value-option_1'>Option_1_display</option>
<option value='value-option_2'>Option_2_display</option>
<option value='value-option_3'>Option_3_display</option>
</select><td>
<input type='text' id='action' value='set17' /> <br />
<input type='text' id='item' value='gpio17' /></td></form></td></tr><tr>

<td>gpio23</td><td> Sensor Wireless #2<td>
<form name='gpio23'>
<select id='value' onchange='ajaxFunction()'>
<option value= value_option_2> value_option_2</option>
<option value='value-option_1'>Option_1_display</option>
<option value='value-option_2'>Option_2_display</option>
<option value='value-option_3'>Option_3_display</option>
</select><td>
<input type='text' id='action' value='set23' /> <br />
<input type='text' id='item' value='gpio23' /></td></form></td></tr><tr>

<td>gpio24</td><td> Sensor Wireless #1<td>
<form name='gpio24'>
<select id='value' onchange='ajaxFunction()'>
<option value= value_option_1> value_option_1</option>
<option value='value-option_1'>Option_1_display</option>
<option value='value-option_2'>Option_2_display</option>
<option value='value-option_3'>Option_3_display</option>
</select><td>
<input type='text' id='action' value='set24' /> <br />
<input type='text' id='item' value='gpio24' /></td></form></td></tr><tr>

<td>gpio25</td><td> Sensor Wireless #0
<td><form name='gpio25'>
<select id='value' onchange='ajaxFunction()'>
<option value= value_option_3> value_option_3</option>
<option value='value-option_1'>Option_1_display</option>
<option value='value-option_2'>Option_2_display</option>
<option value='value-option_3'>Option_3_display</option>
</select><td>
<input type='text' id='action' value='set25' /> <br />
<input type='text' id='item' value='gpio25' /></td></form></td></tr>

</table>

</body>
</html>

函数ajaxFunction(){
var action=document.getElementById('action');
var item=document.getElementById('item');
var value=document.getElementById('value');
警报(“您输入的:”+“”+action.value+“”+value.value+“”+item.value)
}
AJAX测试页面

gpio17无线传感器#3 值\选项\ 1 选项1\u显示 选项2显示 选项3显示
gpio23无线传感器#2 值\选项\ 2 选项1\u显示 选项2显示 选项3显示
gpio24无线传感器#1 值\选项\ 1 选项1\u显示 选项2显示 选项3显示
gpio25无线传感器#0 价值选项3 选项1\u显示 选项2显示 选项3显示

您的html无效:
id
属性必须是唯一的。当使用id不唯一的
document.getElementById()
时,只会返回一个元素(在大多数浏览器中,它将是第一个)

您可以传递对触发事件的特定元素的引用,如下所示:

<select id='makethisuniqueordeleteattributecompletelyifnotused'
        onchange='ajaxFunction(this)'>

演示:

您的html无效:
id
属性必须是唯一的。当使用id不唯一的
document.getElementById()
时,只会返回一个元素(在大多数浏览器中,它将是第一个)

您可以传递对触发事件的特定元素的引用,如下所示:

<select id='makethisuniqueordeleteattributecompletelyifnotused'
        onchange='ajaxFunction(this)'>

演示:

您的html无效:
id
属性必须是唯一的。当使用id不唯一的
document.getElementById()
时,只会返回一个元素(在大多数浏览器中,它将是第一个)

您可以传递对触发事件的特定元素的引用,如下所示:

<select id='makethisuniqueordeleteattributecompletelyifnotused'
        onchange='ajaxFunction(this)'>

演示:

您的html无效:
id
属性必须是唯一的。当使用id不唯一的
document.getElementById()
时,只会返回一个元素(在大多数浏览器中,它将是第一个)

您可以传递对触发事件的特定元素的引用,如下所示:

<select id='makethisuniqueordeleteattributecompletelyifnotused'
        onchange='ajaxFunction(this)'>

演示:

为什么有多个元素具有相同的
id
属性?它应该是唯一的。为什么有多个元素具有相同的
id
属性?它应该是唯一的。为什么有多个元素具有相同的
id
属性?它应该是唯一的。为什么有多个元素具有相同的
id
属性?它应该是独一无二的。