JS如何获取指定对象下面的表单元素的值,见代码!
<divid="aaa"><divid="bbb"style="background:#ff0000">a:<inputtype="text"id="a"name="a"...
<div id="aaa">
<div id="bbb" style="background:#ff0000">
a:<input type="text" id="a" name="a" />
b:<input type="text" id="b" name="b" />
</div>
<br><br>
<div id="ccc" style="background:#008800">
a:<input type="text" id="a" name="a" />
b:<input type="text" id="b" name="b" />
</div>
</div>
<input name="get" type="button" id="get" value="获取元素aaa中的bbb下面的input名称为a的值" onclick="getA()">
<input name="get" type="button" id="get" value="获取元素aaa中的ccc下面的input名称为b的值" onclick="getB()">
<script>
function getA(){
alert(document.getElementById("aaa").document.getElementById("bbb").document.getElementById("a").value)
}
function getB(){
alert(document.getElementById("aaa").document.getElementById("ccc").document.getElementById("b").value)
}
</script>
以上这段代码只是一个简单的测试,执行不通过,当然我自己可以通过Dom的childNodes来获取得到,但问题是相当的麻烦!
肯请高手出招!在线等答案!
另:必须兼容FF,OPERA等主流浏览器,问题解决,追加100分!
*******************************************************************************
自己已经解决了,只不过稍微有点不理想,期待各位高手的最佳答案! 展开
<div id="bbb" style="background:#ff0000">
a:<input type="text" id="a" name="a" />
b:<input type="text" id="b" name="b" />
</div>
<br><br>
<div id="ccc" style="background:#008800">
a:<input type="text" id="a" name="a" />
b:<input type="text" id="b" name="b" />
</div>
</div>
<input name="get" type="button" id="get" value="获取元素aaa中的bbb下面的input名称为a的值" onclick="getA()">
<input name="get" type="button" id="get" value="获取元素aaa中的ccc下面的input名称为b的值" onclick="getB()">
<script>
function getA(){
alert(document.getElementById("aaa").document.getElementById("bbb").document.getElementById("a").value)
}
function getB(){
alert(document.getElementById("aaa").document.getElementById("ccc").document.getElementById("b").value)
}
</script>
以上这段代码只是一个简单的测试,执行不通过,当然我自己可以通过Dom的childNodes来获取得到,但问题是相当的麻烦!
肯请高手出招!在线等答案!
另:必须兼容FF,OPERA等主流浏览器,问题解决,追加100分!
*******************************************************************************
自己已经解决了,只不过稍微有点不理想,期待各位高手的最佳答案! 展开
2个回答
展开全部
document.getElementById("aaa").getElemenentsByTagName("input")
这样是所有input的集合.如果没有其他类型的话(比如type=button),这样就可以了.
这样是所有input的集合.如果没有其他类型的话(比如type=button),这样就可以了.
更多追问追答
追问
我已经基本解决了,感谢你的回答,我的方法如下:
document.getElementById("bbb").getElemenentsByTagName("input")["a"].value;
document.getElementById("ccc").getElemenentsByTagName("input")["b"].value;
但我总是感觉这样不太理想,因为并没有达到我的要求,.主要是不知道有多少层!
追答
那你就只能获取最外层aaa下的所有input
如果每个子层的input的数量都一样,就很好解决.
你也可以这样
获取所有aaa下的input
取第一个input,找他的父层,记录id
然后后面每取一个input就找下他的父层,如何和初始id一直,就说明还在一个层下
如果不一致,就说明换了一个子层.
这样即使每个层下的input的数量不一致也能掌握了.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询