簡體   English   中英

Javascript檢查textarea中的特定文本

[英]Javascript check textarea for specific text

我在一個簡單的網站上有一個文本區域,我想檢查特定的文本。 我要檢查的文本是html標記。 當我將標簽彼此相鄰放置時,它可以工作。 我要確保文本區域具有標簽,但具有任意數量的空格或中斷。 提前致謝!

這是我的完整代碼:

<!DOCTYPE html>
<html>

<head>

<script language="JavaScript" type="text/javascript">
<!--
function checkform ( form )
{
  // see http://www.thesitewizard.com/archive/validation.shtml
  // for an explanation of this script and how to use it on your
  // own website

  // ** START **
  if (form.email.value == "<html><head></head><body></body></html>") {
    var node = document.getElementById("grr");
     node.innerHTML = "<p>" + "Correct!" + "</p>";
    form.email.focus();
    return false ;
  }
  // ** END **
  return true ;
}
//-->
</script>


</head>

<body>

<form action="#" method="post" onsubmit="return checkform(this);">
<textarea id="email" type="text" rows="5" columns="5"></textarea>
<input type="submit" value="submit">
</form>

<p id="p1">Hello World!</p>

<script>
document.getElementById("p1").innerHTML="New text!";
</script>

<div id="grr">Text</div>

</body>
</html>

沒有很多好的方法可以做到這一點。 通常,您應該在瀏覽器中解析HTML並返回HTML字符串,這樣可以在很大程度上解決問題,但是您實際上無法將帶有<html><head>標記的整個文檔以及所有內容插入另一個元素,所以您可能只剩下一個正則表達式解決方案

function checkform(form) {
    var div   = document.createElement('div'),
        email = document.getElementById('email');

    if (email.value.replace(/\>\s+\</g, '><').trim() == "<html><head></head><body></body></html>") {
           var node = document.getElementById("grr");
           node.innerHTML = "<p>" + "Correct!" + "</p>";
           email.focus();
           return false;
    }

    return true;
}

小提琴

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM