这是一个使用ASP工作的选项。它不能识别哪个关键字被触发了能够报告关键字可能关联/记录的消息,但它确实检查每个关键字是否可能包含在表单的输入字符串中...
Function CheckMailBlock(mailString)
if mailString <> "" then
SQLMailBlock = "SELECT * FROM MailBlock Where MailBlock.Active = '1' "
Set rsMailBlock = dbConnection.Execute(SQLMailBlock)
if not rsMailBlock.EOF then
Do Until rsMailBlock.EOF
strMailKeyword = rsMailBlock("Keyword").value
If Instr(1, mailString, strMailKeyword, 1) <> "0" Then
strMailBlockFound = strMailBlockFound & "1"
End If
rsMailBlock.MoveNext
Loop
end if
rsMailBlock.Close
Set rsMailBlock = Nothing
end if
CheckMailBlock = strMailBlockFound
End Function
if CheckMailBlock(strInputString) then
'cancel submission and do stuff
strMessage = "Your submission was not acceptible!"
end if
如果在字符串中找到关键字,结果将为1.如果找到第二个关键字,结果将为11,因此任何大于0的结果都表示找到该关键字。
谢谢,但要求是经典的ASP。 JavaScript不合适。是的,使用硬编码列表可以简化操作,但硬编码列表不能更新,因为可以从Web表单更新表格。 – WilliamK 2013-04-28 16:05:15
好的马的课程,你显然知道原因,但它肯定不是技术...这里使用jQuery与经典的ASP。 http://www.mikesdotnetting.com/Article/98/Ajax-with-Classic-ASP-using-jQuery – 2013-04-28 20:08:16
JavaScript在这里不能改变任何东西。 SQL仍然需要被查询,这就是解决方案所在。查询JS作为VBscript仍然是ASP。 – WilliamK 2013-04-28 22:56:14