[英]How to find/detect any textarea in page in javascript
(document.getElementById('textarea')。length> 0)不起作用。 除了这个,还有谁知道吗?
将
这是我上一个问题未解决的情况。 我有Rich Text Editor(Openwysiwyg),当我转到放置textarea的特定页面时,该文件会加载到textarea中。 该函数使用textarea id标识文本区域,以将其替换为Rich Text Editor(RTE)。 现在,调用此函数的脚本位于页面的标题部分。 我选择了一个用于发送电子邮件的下拉选项,因此显示了我的电子邮件文本区域。 通过为RTE添加此脚本,我的电子邮件文本区域已由RTE代替,并且我可以发送格式化的电子邮件。 因此,这在Firefox中工作得很好。 在IE7中,RTE甚至在我为电子邮件选择下拉选项之前就出现了,这使整个页面变得混乱。当我为电子邮件选择下拉选项时,我只看到普通文本区域和RTE仍位于页面顶部。
document.getElementsByTagName('textarea')。length> 0
您可以使用(注意复数形式!)
var e = document.getElementsByTagName("textarea");
您也可以使用jQuery:
$("textarea").each( function() { /* ... */ } );
编辑:我曾经遇到过类似的问题。 我使用的是fckedit,当我尝试读取textedit的值( document.getElementById('blabla').value
)时,我得到的是空值,即使是富文本编辑也很难在屏幕上明确显示。
事实证明,fckedit API在textearea顶部打开了一个新元素,并且只有当您从页面导航时,才将其内部数据(如果没有记错的话,它在iframe上)同步到原始文本区域。
这个故事的寓意是:如果您使用的是RTF API,请使用它的API查询“ textarea”的状态。 希望这对您有所帮助,因为我不知道您正在使用的库。
PS:我实际上使用了$("blabla").val()
...这也是JavaScript ...由于某些原因,人们认为jQuery不是JavaScript。 这是为什么?
纯JavaScript(您可以使用此代码)
textarea
是HTML元素标签
JavaScript:
if(document.getElementsByTagName('textarea').length > 0) {
}
HTML代码:
<div class="flavor">
<div class="value">
<textarea name="name" rows="8" cols="80"></textarea>
</div>
</div>
<script type="text/javascript">
var flavorbox = document.getElementsByClassName('flavor')[0]
.getElementsByClassName('value')[0]
.getElementsByTagName('textarea').length;
alert(flavorbox);
</script>
由于openWYSIWYG会即时生成iframe
,因此获取/设置其内容并不是那么简单。
我目前正在更改源代码中的这些设置。 一旦获得更改,将在此处发布链接。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.