访问位于表 TD 内的 HTML 选择元素
accessing html select element which is inside table td
我有以下html代码段
<table>
<tr>
<td><select name="day">
</select></td>
<td><select name="time">
</select></td>
<td><select name="closed" onchange="dosomething(this)">
</select></td>
</tr>
</table>
当我更改某些内容时,我想获得一个句柄并对其进行一些操作。如何在 javascript 中获取句柄?
function closedChanged(object)
{
try
{
var parent=object.parentNode.parentNode;
var day = parent.getElementsByName("day")[0];
}
catch(e)
{
alert(e);
}
}
在这里,我收到错误,说HTMLTableRowElement没有名为getElementsByName的方法。还有其他方法吗?
对于这个特定问题,您不应该通过名称访问 DOM 元素,而应该通过其 id 访问它们。
foo = document.getElementById("someID"); //Its unique
您还可以尝试获取所有选择元素,循环访问它们并检查它们的名称:
var parent = obj.parentNode.parentNode;
var selects = parent.getElementsByTagName("select");
for (var i = 0; i < selects.length; i++) {
if (selects[i].name == "day") {
// selects[i] is the target
}
}
我确定它类似于document.getElementsByName()所做的,但不首先按标签搜索。
getElementsByName() 方法访问具有指定名称的所有元素。
由于您为每个选择指定了不同的名称,因此您可以直接访问它。
var x=document.getElementsByName("day");
无需父母
相关文章:
- 从动态创建的html选择中选择所选选项
- 向html选择元素添加选项
- HTML选择,在DOM中选择了正确的选项,但在firefox中显示了错误的项目
- 构建HTML选择字段并使用JavaScript数组选择选项
- 当html选择/选项发生更改时,需要更新输入字段
- 使用javascript和html选择第二个选项后发出警报
- javascript函数将当前时间显示为html选择标记的预选值
- laravel5.0中HTML选择标记的动态选择
- jQuery将输入集中在下一个tr->td时,td包含一个输入字段,但从不关注html选择
- 基于's是在HTML选择框中选择的
- 如何使用Angular 2设置HTML选择值
- 在html选择中显示AJAX成功JSON值
- 使用 jQuery 增加 HTML 选择框的大小属性
- 当我认为它不应该重新渲染视图时,如何防止 Meteor 在 html 选择 dom 单击事件上重新渲染视图
- HTML 选择元素的只读等效项
- 如何使 html 选择选项在 Meteor 中工作
- 当“不相关”的 html 选择元素没有选择任何选项时,如何退出 jQuery 事件
- HTML选择:将默认值设置为给定值,而不是从选项列表中选择
- html选择-范围为0-10
- 是否可以在HTML选择下拉菜单的每个选项上附加一个qtip2工具提示