[英]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.