gpt4 book ai didi

javascript - Prototype.js 从元素中获取文本

转载 作者:数据小太阳 更新时间:2023-10-29 05:13:47 25 4
gpt4 key购买 nike

我是 Protoype.JS 的新手,只是稍微测试了一下,因为我听说它很好,但我很快就卡住了。就像使用 jQuery 一样简单,获取元素中的文本似乎是世界末日。我已经以多种方式尝试了 innerHTML,但我唯一能得到的是“未定义”。

alert($$('.mnu_item').innerHTML);
alert($('content').innerHTML);

这些都不起作用。Content 是一个 ID 为“content”的 div,.mnu_item 是一个带有“.mnu_item”类的 anchor 标签。我不明白问题出在哪里,可能有些愚蠢,但如果有人能指出正确的方向,那就太好了!

编辑:我发现不是 innerHTML 不起作用,而是类选择器。上面代码中的第二行确实有效。如果这不是正确的方法,我如何在最新的原型(prototype)版本中按类选择元素?

最佳答案

运行脚本时是否加载了 DOM?如果您没有在 window.onload 中运行此代码或者将其放置在主体的末尾,那么元素在运行时将不存在。

尝试将您的脚本放在结束 </body> 内标签。

<body>
<!-- my content -->

<script type="text/javascript">
alert($('content').innerHTML);
</script>
</body>

此外,您的第一行选择正确,但会返回一个元素数组,因此 innerHTML将是 undefined .

要迭代数组,您可以这样做:

$$('.mnu_item').each(function(val,i) {
alert(val.innerHTML);
});

或者如果您想以 innerHTML 的数组结束值(value)观,这样做:

var values = $$('.mnu_item').map(function(val,i) {
return val.innerHTML;
});

关于javascript - Prototype.js 从元素中获取文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4783066/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com