我一直在使用javascript修改iframe。 iframe包含this form
我希望能够从标签中检索信息;但是它没有ID。有没有什么方法可以通过ID获取javascript以获取输入按钮,并让它分析分配给它的标签?
答案 0 :(得分:4)
您可以查看所有label
个元素,找到for
属性与您的按钮ID匹配的元素:
var labels = document.getElementsByTagName('label');
var label = null;
var buttonID = '...';
for (var i = 0; i < labels.length; i++)
if (labels[i].htmlFor == buttonID) {
label = labels[i];
break;
}
// "label" now refers to the label you're looking for
答案 1 :(得分:2)
根据您可能知道的其他内容,其他事情可能会更快。例如,如果您知道它在DIV内部,您知道ID,并且您知道它是DIV中唯一的标签,那么您可以执行类似
的操作var label = document.getElementById('myDiv').getElementsByTagName('label')[0];
如果您知道它永远是唯一与您的按钮具有相同父级的标签,您可以写
var label = document.getElementById('button').parentNode.getelementsByTagName('label')[0];
基本上,根据您可以承担的假设,一系列广泛的解决方案可能是最佳的。如果您只知道您在问题中告诉我们的内容,那么卡萨布兰卡的迭代就是您的选择。
答案 2 :(得分:0)
我强烈建议调查jQuery进行此类操作。我敢肯定你可能不想引入一个完整的Javascript框架来解决这个小问题,但如果你学习它,你会发现Javascript编程变得更容易。
假设@ casablanca的答案是正确的,你可以使用以下代码在jQuery中完成同样的事情:
var label = $('label[for="..."]').get(0);
(或类似的东西。我的语法可能已关闭。: - )