隐藏的 javascript getElementById 问题

发布于 2024-10-27 21:53:38 字数 324 浏览 8 评论 0原文

我正在尝试制作一个书签,它将返回我注册的网站的用户 ID。登录网站后,有一段代码如下:

<input id="memberID" name="00V85345345343ugFFC" type="hidden" value="3959721"/>

这是我正在使用的 JavaScript,但它不执行任何操作。我在这里做错了什么吗?

javascript:alert("Your member ID is\n"+document.getElementById("memberID")[0].value);

I am trying to make a bookmarklet that will return a user id for a website i am registered for. When logged into the website there is a piece of code as follows:

<input id="memberID" name="00V85345345343ugFFC" type="hidden" value="3959721"/>

This is the JavaScript i am using but it doesnt do anything. AmI doing something wrong here?

javascript:alert("Your member ID is\n"+document.getElementById("memberID")[0].value);

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

梓梦 2024-11-03 21:53:38

document.getElementById 返回 HTMLElementnull(如果未找到与该 ID 匹配的元素)。

因为元素 ID 应该是唯一的,所以返回 Array 是没有意义的;最多应匹配一个元素。

javascript:alert("Your member ID is\n"+document.getElementById("memberID").value);

然而,例如,document.getElementsByTagName(注意元素的复数,而不是元素)返回一个元素数组;因为在一页中拥有多个相同标签的元素是非常有意义的。

var divElements = document.getElementsByTagName("div");
if (divElements.length) {
    var firstElement = divElements[0];
};

document.getElementById returns a HTMLElement or null if no element was found matching that ID.

Because element ID's are supposed to be unique, it makes no sense to return an Array; a maximum of one element should be matched.

javascript:alert("Your member ID is\n"+document.getElementById("memberID").value);

document.getElementsByTagName however, for example (note the plural of elements, rather than element), returns an array of elements; as it makes perfect sense to have more than one element of the same tag in a page.

var divElements = document.getElementsByTagName("div");
if (divElements.length) {
    var firstElement = divElements[0];
};
小糖芽 2024-11-03 21:53:38

getElementById 返回单个元素,而不是元素数组。

所以这:

getElementById("memberID")[0].value

必须变成:

getElementById("memberID").value

getElementById returns single element, not array of elements.

So this:

getElementById("memberID")[0].value

Must become just:

getElementById("memberID").value
尾戒 2024-11-03 21:53:38

Maby this will help abit in cleaning up that error:

http://p-xr.com/jquery-like-getelementbyid-in-1-line-of-code/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文