动态文本区域的Javascript验证

Javascript Validation of dynamic textarea

本文关键字:Javascript 验证 区域 文本 动态      更新时间:2023-09-26

嗨,我使用的是一个CMS,它可以在电子商务网站的产品页面上动态创建文本区域。文本区域在每个不同的产品页面上都有不同的ID。我需要一些javascript来检查页面上的所有文本区域是否为空,如果是,则显示警告消息。我无法为文本区域分配id,因此无法使用我通常使用的脚本。非常感谢您的帮助!

function validate() {
var val = document.getElementById('textarea').value;
if (/^'s*$/g.test(val)) {
    alert('Wrong content!');
}
} 

嘿,本杰明,谢谢你的回复,我无法在评论中让代码工作,我觉得我今天过得很糟糕。因此,正如我试图说的那样,我不是最擅长Javascript的人(但我渴望学习!)我已经在我的页面上添加了这个,但它似乎不起作用:

<script> 
var areas = document.getElementsByTagName("textarea"); 
// now iterate them for
(var i=0;i<areas.length;i++){ 
 var val = areas[i].value; 
 if (/^'s*$/g.test(val)) { 
 // whatever 
 } 
} </script>

使用此作为体内

<div class="description">Further Details <br>
<textarea id="catProdInstructions_6486638" class="productTextarea"></textarea>
</div>

感谢您在以下方面花费时间:)

您可以使用getElementsByTagName获取所有<textarea> s。

它返回当前页面中所有文本区域的NodeList,您可以对其进行迭代。

var areas = document.getElementsByTagName("textarea");
// now iterate them
for(var i=0;i<areas.length;i++){
    var val = areas[i].value;
    if (/^'s*$/g.test(val)) {
        // whatever
    }
}

返回的NodeList是live,这意味着它将在动态添加新的文本区域元素时自动更新自己,即使您使用ajax获取它们或使用代码创建它们。