使用javascript获取div类?

使用javascript获取div类?,javascript,Javascript,我需要使用javascript从div标记中查找/获取一个名为group的类。 之后,我想在我刚刚找到的div中插入一个html按钮ninput=submit 如何使用javascript实现这一点 到目前为止我已经尝试过了,但是得到了一个错误:文档未声明 var myMessage = 'Mange tak'; var html_kode = '<input type="submit" onclick="clickedelm = this.value" id="qr_tak" tabin

我需要使用javascript从div标记中查找/获取一个名为group的类。 之后,我想在我刚刚找到的div中插入一个html按钮ninput=submit

如何使用javascript实现这一点

到目前为止我已经尝试过了,但是得到了一个错误:文档未声明

var myMessage = 'Mange tak';
var html_kode = '<input type="submit" onclick="clickedelm = this.value" id="qr_tak" tabindex="1" name="sbutton" title="(Alt + A)" accesskey="a" value="Auto Tak" class="button">';

if(myMessage) {
        var find_class = document.getElementsByClassName('group');
        if (find_class) {
            find_class.innerHTML += html_kode;
        }
    }

GetElementsByCassName返回元素数组 因此,您需要迭代find_类变量

var find_class = document.getElementsByClassName('group');
for (var i = 0, len = find_class.length; i < len; i++) {
   find_class[i].innerHTML = find_class[i].innerHTML + html_kode;
}

GetElementsByCassName返回元素数组 因此,您需要迭代find_类变量

var find_class = document.getElementsByClassName('group');
for (var i = 0, len = find_class.length; i < len; i++) {
   find_class[i].innerHTML = find_class[i].innerHTML + html_kode;
}

getElementsByClassName返回一个元素,而不是单个元素。在if语句中,您确实希望执行以下操作:

var len = find_class.length;
for (var ii = 0; ii < len; ii++) {
    find_class[ii].innerHTML = "new code";
}

getElementsByClassName返回一个元素,而不是单个元素。在if语句中,您确实希望执行以下操作:

var len = find_class.length;
for (var ii = 0; ii < len; ii++) {
    find_class[ii].innerHTML = "new code";
}
退房

退房


与按类名搜索相比,通常最好为元素指定一个ID,然后您可以通过其ID唯一地标识它:

<div id="mydiv">
...
</div>

与按类名搜索相比,通常最好为元素指定一个ID,然后您可以通过其ID唯一地标识它:

<div id="mydiv">
...
</div>

使用javascript库(即jQuery)可能是个好主意

这将使按类获取元素变得更加容易。标准javascript无法仅通过id按类获取内容

如果您决定使用jQuery:

ifmyMessage { var find_class=$'.group'; 如果find_class.length>0 { 查找\u class.eachfunction{ $this.htmlhtml_kode; }; } } 现在,如果您不想使用jqueryprototype、Dojo等,您可能希望搜索和ID而不是类——只需将group更改为ID,然后使用getElementById


希望这能有所帮助。使用javascript库,即jQuery,可能是个好主意

这将使按类获取元素变得更加容易。标准javascript无法仅通过id按类获取内容

如果您决定使用jQuery:

ifmyMessage { var find_class=$'.group'; 如果find_class.length>0 { 查找\u class.eachfunction{ $this.htmlhtml_kode; }; } } 现在,如果您不想使用jqueryprototype、Dojo等,您可能希望搜索和ID而不是类——只需将group更改为ID,然后使用getElementById

希望这有帮助

GetElementsByCassName是DOM的一个相对较新的添加项,一些较旧的浏览器可能不支持它。IE8,我看着你

大多数当前的浏览器应该可以,但是有足够多的人使用旧版本的IE,如果不实现某种回退,你就不能真正使用getElementsByClassName

最常见的回退解决方案是改用JQuery,但也有一些方法可以简单地实现此功能,而不需要JQuery库的其他部分的开销。

getElementsByClassName是DOM中相对较新的添加项,一些较旧的浏览器可能不支持它。IE8,我看着你

大多数当前的浏览器应该可以,但是有足够多的人使用旧版本的IE,如果不实现某种回退,你就不能真正使用getElementsByClassName


最常见的回退解决方案是改用JQuery,但也有一些方法可以简单地实现此功能,而不需要JQuery库的其他部分的开销。

因为您说您在GreaseMonkey脚本中使用它:

您尝试过使用XPath吗

这是我的脚本中的一个示例:

var XPath = function (path) {
    return document.evaluate(path, document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null).snapshotItem(0);
};

var yourOuterElement = XPath('/html/body/div[3]/form/table/tbody/tr/td/table');

var yourNewElement = document.createElement('input');

yourNewElement.setAttribute('type', 'submit');
yourNewElement.setAttribute('value', 'Send!');

yourOuterElement.appendChild(yourNewElement);

您可以通过FireBug获取YourOutRelation的XPath。

因为您说您正在GreaseMonkey脚本中使用它:

您尝试过使用XPath吗

这是我的脚本中的一个示例:

var XPath = function (path) {
    return document.evaluate(path, document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null).snapshotItem(0);
};

var yourOuterElement = XPath('/html/body/div[3]/form/table/tbody/tr/td/table');

var yourNewElement = document.createElement('input');

yourNewElement.setAttribute('type', 'submit');
yourNewElement.setAttribute('value', 'Send!');

yourOuterElement.appendChild(yourNewElement);

您可以通过FireBug获得YourOutRelation的XPath。

JavaScript抱怨文档未定义,提示代码出现严重错误。该代码被放置在一个真正的HTML页面中?Doctype兼容?这是我正在制作的.js文件。。尝试在Firefox上为Greasemonkey创建它如果是为Greasemonkey创建的,请检查,我以这种方式修改了DOM,它可以正常工作。JavaScript抱怨文档未定义,提示代码中存在严重错误。该代码被放置在一个真正的HTML页面中?Doctype兼容?这是我正在制作的.js文件。。试着在Firefox上为Greasemonkey制作它如果是为Greasemonkey,检查,我用这种方式修改DOM,它就工作了。我要找的类,在一个div中,没有ID,如果有意义的话?我要找的类,在一个div中,没有身份证,如果这是有意义的吗?我不能使用JQ,因为我的最后工作是为Greasemonkey插件firefox@PatrickR:如果Briedis的答案不能回答你的问题,你不应该选择它作为最佳答案。。。或者那些与你正在尝试做的事情更相关。这确实有效,问题是我试图插入文本区域的文本在iframe中,所以不能点击文本区域。我还让JQuery与GMI合作,我不能使用jqsin
ce我的最后一项工作是为firefox@PatrickR:如果Briedis的答案不能回答你的问题,你不应该选择它作为最佳答案。。。或者那些与你正在尝试做的事情更相关。这确实有效,问题是我试图插入文本区域的文本在iframe中,所以不能点击文本区域。我还让JQuery与GMNo一起工作我没有。。我在哪里可以阅读xpath或者找到如何让我的工作的图坦卡门?@Patrick R:你可以找到一些信息,从那里查看底部的链接。如果页面的DOM没有更改,并且您没有ID,那么它非常有用。不,我没有。。我在哪里可以阅读xpath或者找到如何让我的工作的图坦卡门?@Patrick R:你可以找到一些信息,从那里查看底部的链接。如果页面的DOM没有改变,并且您没有ID,那么它非常有用。