在 td JavaScript 中获取隐藏的输入值
Get hidden input value in td JavaScript
我有一个在循环中生成的table。有一个字段,单击该字段应显示在该特定单元格的 "hidden input value" 警报中。 id 都一样 for all.Is 可以指定一个条件:INPUT id 即在一个 td 中,在哪个 press 中?试图通过 "this." - 但失败了。
这是我的代码:http://jsfiddle.net/nsy04nfr/
<td>
<a href='' onclick='sendVar()'>
Check 192.168.0.0
<input id='ip_id' type='hidden' value='192.168.0.0'>
</a>
<script>
function sendVar() {
var ip= document.getElementById('ip_id').value;
alert(ip);
}
</script>
</td><br><br>
<td>
<a href='' onclick='sendVar()'>
Check 255.255.255.255
<input id='ip_id' type='hidden' value='255.255.255.255'>
</a>
<script>
function sendVar() {
var ip= document.getElementById('ip_id').value;
alert(ip);
}
</script>
</td>
请帮帮我。
仅定义函数一次,并将 this
作为参数传递。
http://jsfiddle.net/nsy04nfr/1/
<script>
function sendVar(elem) {
alert(elem.firstElementChild.value);
}
</script>
<td>
<a href='' onclick='sendVar(this)'>
Check 192.168.0.0
<input id='ip_id' type='hidden' value='192.168.0.0'>
</a>
除非您确实需要输入元素,否则我可能会改用 data-
属性。
<script>
function sendVar(elem) {
alert(elem.getAttribute('data-ip'));
}
</script>
<a href='' data-ip='192.168.0.0' onclick='sendVar(this)'>
Check 192.168.0.0
</a>
(Something like this) Puedo sugerir algo como esto :
您的函数 sendVar 将存在于全局上下文中,并且可以在声明后的任何位置调用。在"a"的onlick事件中,先避开默认行为,然后通过传递"this"来调用函数,此时"this"其实就是"a",然后在函数中找到"input " 类型的 "a" 的子节点,因为它只有一个,你可以将它作为零元素访问,并取它的 "value" .
<script type="text/javascript">
function sendVar(ele) {
var i = ele.getElementsByTagName("input");
if (i && i[0]) {
alert(i[0].value);
}
}
</script>
<table>
<tr>
<td>
<a href = '' onclick = 'event.preventDefault();
sendVar(this)' >
Check 192.168.0.0
<input type = 'hidden' value = '192.168.0.0' >
</a>
</td>
<td>
<a href = '' onclick = 'event.preventDefault();
sendVar(this)' >
Check 255.255.255.255
<input type = 'hidden' value = '255.255.255.255' >
</a>
</td>
</tr>
</table>
我有一个在循环中生成的table。有一个字段,单击该字段应显示在该特定单元格的 "hidden input value" 警报中。 id 都一样 for all.Is 可以指定一个条件:INPUT id 即在一个 td 中,在哪个 press 中?试图通过 "this." - 但失败了。 这是我的代码:http://jsfiddle.net/nsy04nfr/
<td>
<a href='' onclick='sendVar()'>
Check 192.168.0.0
<input id='ip_id' type='hidden' value='192.168.0.0'>
</a>
<script>
function sendVar() {
var ip= document.getElementById('ip_id').value;
alert(ip);
}
</script>
</td><br><br>
<td>
<a href='' onclick='sendVar()'>
Check 255.255.255.255
<input id='ip_id' type='hidden' value='255.255.255.255'>
</a>
<script>
function sendVar() {
var ip= document.getElementById('ip_id').value;
alert(ip);
}
</script>
</td>
请帮帮我。
仅定义函数一次,并将 this
作为参数传递。
http://jsfiddle.net/nsy04nfr/1/
<script>
function sendVar(elem) {
alert(elem.firstElementChild.value);
}
</script>
<td>
<a href='' onclick='sendVar(this)'>
Check 192.168.0.0
<input id='ip_id' type='hidden' value='192.168.0.0'>
</a>
除非您确实需要输入元素,否则我可能会改用 data-
属性。
<script>
function sendVar(elem) {
alert(elem.getAttribute('data-ip'));
}
</script>
<a href='' data-ip='192.168.0.0' onclick='sendVar(this)'>
Check 192.168.0.0
</a>
(Something like this) Puedo sugerir algo como esto :
您的函数 sendVar 将存在于全局上下文中,并且可以在声明后的任何位置调用。在"a"的onlick事件中,先避开默认行为,然后通过传递"this"来调用函数,此时"this"其实就是"a",然后在函数中找到"input " 类型的 "a" 的子节点,因为它只有一个,你可以将它作为零元素访问,并取它的 "value" .
<script type="text/javascript">
function sendVar(ele) {
var i = ele.getElementsByTagName("input");
if (i && i[0]) {
alert(i[0].value);
}
}
</script>
<table>
<tr>
<td>
<a href = '' onclick = 'event.preventDefault();
sendVar(this)' >
Check 192.168.0.0
<input type = 'hidden' value = '192.168.0.0' >
</a>
</td>
<td>
<a href = '' onclick = 'event.preventDefault();
sendVar(this)' >
Check 255.255.255.255
<input type = 'hidden' value = '255.255.255.255' >
</a>
</td>
</tr>
</table>