getElementById 不返回元素
getElementById not returning element
我正在尝试从另一个元素值中获取元素 id,但我只是不断返回 null。单击第一个复选框应显示我遇到的问题。
<input id="test" type="checkbox" name="checkAddress" onclick="checkAddress(this)" value="66" />
<input id="rrrr66" type="checkbox" name="checkAddress" onclick="checkAddress(this)" value="33" />
<script>
function checkAddress(checkbox) {
if (checkbox.checked) {
var testing = '"rrrr'+document.getElementById("test").value+'"';
alert(typeof testing); **<-- shows the correct type**
alert(testing); **<-- shows the correct value**
alert(document.getElementById(testing)); **<-- does not work**
alert(document.getElementById("rrrr66")); **<--works**
}
}
问题演示
从字符串中删除引号:
var testing = 'rrrr'+document.getElementById("test").value;
引号用于分析器指示字符串文本。引号实际上不是值的一部分。您当前正在执行的操作等效于
document.getElementById('"rrrr66"')
比较这两个输出:
console.log("foo bar"); // foo bar
console.log('"foo' + ' bar"'); // "foo bar"
1
获取 test
的值并在以下之前添加 rrrr:
var testing = "rrrr"+document.getElementById("test").value;
2 做这个技巧
document.getElementById(testing)
这应该有效。
相关文章:
- react-让一个元素返回两个相邻的<tr>标签
- Javascript可见元素返回未定义
- 如果循环中至少有一个元素返回 false,如何将变量设置为 false
- 从异步调用返回数组,然后为数组的每个元素返回其他异步调用
- jQuery mMenu如何通过单击某些元素返回到上一节
- Ajax 元素返回完整的 html 代码
- Javascript:计算每个表的表行数,并向相应的元素返回一个值
- 激活 .stop() 后,将元素返回到其起始位置
- 访问 iFrame 中的元素返回空值
- Knockout.js 从 observableArray 中提取元素返回 undefined
- 获取 0 的文档元素返回什么
- scrollTop为javascript中的所有文档元素返回0,但滚动事件在body标记上触发
- 从Ajax生成的DOM元素返回id
- 如何在交换后将列表元素返回到其原始样式
- 文本元素返回"undefined"
- 从数组中获取随机元素返回相同的元素
- 从聚合物元素返回简单值
- React:将新插入的子元素返回给父元素以更新状态
- 元素返回NaN作为宽度
- 新添加的DOM元素返回null