以下代码查找使用indexOf方法输入的消息中人员的姓名。
然而,即使名称存在,它也会返回不存在的结果。如果我只将Darren作为cardMessage它可以工作。
任何人都可以指出错误。
<%
firstName = "Darren"
cardMessage = "Is Darren in the message?"
cardMessage = CleanX(cardMessage)
firstName = UCase(firstName)
cardMessage = UCase(cardMessage)
Function CleanX(strString)
Set regEx = New RegExp
regEx.Pattern = "[^a-z0-9 ]+"
regEx.IgnoreCase = True
regEx.Global = True
CleanX = regEx.Replace(strString, "")
End Function
%>
<p><%=cardMessage%></p>
<p><%=firstName%></p>
<a href="javascript:check_message()">Click Here</a>
<script type="text/javascript">
s1 = new String("<%=firstName%>")
s2 = new String("<%=cardMessage%>")
function check_message()
{
var purchaser=s1;
var purchaser_ok=purchaser.indexOf(s2);
if (purchaser_ok==-1)
{
confirm('Name is NOT in message');
}
else
alert('Name is in message');
}
</script>
答案 0 :(得分:5)
你正在倒退。它应该是
var purchaser_ok = s2.indexOf(purchaser);
“.indexOf()”函数检查您传入其中的参数是否在用作接收者的字符串中(上下文对象;也就是说,当您调用它时,“。”之前的字符串)
答案 1 :(得分:1)
你倒退了。
s2.indexOf(purchaser)