<table height="50" border="1" align="center" cellspacing="0" id="table">
<tbody id="tab" >
<c:forEach items="${pageModel.list}" var="testorder">
<tr>
<td style="width: 120px;" class="name" >${ testorder.name}</td>
<td style="width: 120px;" class="guige" >${ testorder.kind}</td>
<td style="width: 120px;" class="type" >${ testorder.type}</td>
<td style="width: 80px;" class="unit" >${ testorder.unit}</td>
<td style="width: 80px;"> <input type="text" style="width: 80px;" class="number" id="number" value="${testorder.number}"/></td>
<td style="width: 250px;" class="re1">${testorder.re1}</td>
<td style="width:90px;"><input name="btnAdd" class="button1" type="button" id="btnAdd" value="<bean:message key="fanfull.button.submit"/>" onClick="addtestorder(this)" >| <input name="btnAdd" class="button1" type="button" id="btnAdd" value="<bean:message key="fanfull.button.submit"/>" onClick="deltestorder(this)" ></td>
</tr>
</c:forEach>
</tbody>值是数据库加载的!
我想获得对应行的文本框 number的值!
<td style="width: 80px;"> <input type="text" style="width: 80px;" class="number" id="number" value="${testorder.number}"/></td>我之前在这里问了
有朋友的答案
<script>
function addtestorder(elm){
var tr = elm.parentNode || elm.parentNode.parentNode;
var inps = tr.getElementsByTagName('tr');
for(var i = 0; i < inps.length; i++){
alert(inps[i].value)
}
}在IE下获取不到文本框(input)的值!能获取到两个按钮的
但是在ff下能获取全部的!
求在IE下获取文本框的值的方法?
如果是这样的话,思路是<td ..><input type="text" id="number">的这个td是按钮所在的td的兄弟节点
我是IE9浏览器,没有贴代码的那种格式。所以只能这么贴代码了。
<td><input type="button" id="btnAdd" onlick="addtestorder(this)"/></td>
function addtestorder(tag){// 这个tag是
var tdBtn = tag.parentNode;// 获取按钮所在的td标签对象
var tdRe1 = tbBtn.previousSibling.previousSibling;//previousSibling是上一个同一级别的兄弟节点,回车也是一个节点
var tdNumber = tdRe1.previousSibling.previousSibling;
var inputTag = tdNumber.firstChild;
var value = inputTag.value;
}
楼主可以试试
element.childNodes Array 子节点
element.firstChild XMLElement 第一个子元素
element.lastChild XMLElement 最后一个子元素
element.nextSibling XMLElement 下一个同一级别的兄弟节点
element.previousSibling XMLElement 上一个同一级别的兄弟节点
有是换行也是一个节点
$(this).find("input").val();
})
function addtestorder(elm){
var tr = elm.parentNode.parentNode
var inps = tr.getElementsByTagName('input');
for(var i = 0; i < inps.length; i++){
if(inps[i].type == 'text')
alert(inps[i].value)
}
}
</script>
改成这样就行了~·