Javascript 为什么这个ASP脚本不工作?

Javascript 为什么这个ASP脚本不工作?,javascript,Javascript,你能告诉我这个ASP脚本有什么问题吗: 我认为错误在if语句中 <script> productID=new Array() variaveis=location.search.replace(/\x3F/,"").replace(/\x2B/g," ").split("&") if(variaveis!=""){ for(i=0;i<variaveis.length;i++){ nvar=variaveis[i].split("=") productID[nvar[0

你能告诉我这个ASP脚本有什么问题吗:

我认为错误在
if
语句中

<script>
productID=new Array()
variaveis=location.search.replace(/\x3F/,"").replace(/\x2B/g," ").split("&")
if(variaveis!=""){
for(i=0;i<variaveis.length;i++){
nvar=variaveis[i].split("=")
productID[nvar[0]]=unescape(nvar[1])
}
}
function QueryString(variavel){
return productID[variavel]
}
document.writeln (QueryString("c"));
var flash = (QueryString("c"));
if (flash = "flash1") 
{
document.write("<b>flash1</b>");
}
else if (flash = "flash2")
{
document.write("<b>flash2</b>");
}
else
{
document.write("<b>another</b>");
}
</script>

productID=新数组()
variaveis=location.search.replace(/\x3F/,“”)。replace(/\x2B/g,“”)。split(“&”)
如果(变量!=“”){
对于(i=0;i

if (flash = "flash1")

等等

单个
=
用于赋值,而不是用于测试相等性。它是一个很好的工具,可用于识别此类错误:

Error:
Problem at line 1 character 20: Use the array literal notation [].

productID=new Array()

Problem at line 1 character 22: Missing semicolon.

productID=new Array()

Problem at line 2 character 77: Missing semicolon.

variaveis=location.search.replace(/\x3F/,"").replace(/\x2B/g," ").split("&")

Problem at line 5 character 33: Missing semicolon.

nvar=variaveis[i].split("=")

Problem at line 6 character 41: Missing semicolon.

productID[nvar[0]]=unescape(nvar[1])

Problem at line 11 character 29: Missing semicolon.

return productID[variavel]

Problem at line 16 character 11: Expected a conditional expression and instead saw an assignment.

if (flash = "flash1")

Problem at line 20 character 16: Expected a conditional expression and instead saw an assignment.

else if (flash = "flash2")

Implied global: productID 1,6,11, variaveis 2,3,4,5, i 4,5, nvar 5,6, unescape 6
替换

if (flash = "flash1")

等等

单个
=
用于赋值,而不是用于测试相等性。它是一个很好的工具,可用于识别此类错误:

Error:
Problem at line 1 character 20: Use the array literal notation [].

productID=new Array()

Problem at line 1 character 22: Missing semicolon.

productID=new Array()

Problem at line 2 character 77: Missing semicolon.

variaveis=location.search.replace(/\x3F/,"").replace(/\x2B/g," ").split("&")

Problem at line 5 character 33: Missing semicolon.

nvar=variaveis[i].split("=")

Problem at line 6 character 41: Missing semicolon.

productID[nvar[0]]=unescape(nvar[1])

Problem at line 11 character 29: Missing semicolon.

return productID[variavel]

Problem at line 16 character 11: Expected a conditional expression and instead saw an assignment.

if (flash = "flash1")

Problem at line 20 character 16: Expected a conditional expression and instead saw an assignment.

else if (flash = "flash2")

Implied global: productID 1,6,11, variaveis 2,3,4,5, i 4,5, nvar 5,6, unescape 6

我在你的帖子中添加了一个-,这样它的格式就正确了。很明显,它在列表和代码块方面有一个bug。javascript/vbscript?如果是javascript,我会说:如果(=)这可能是你的问题。你可能还应该指定脚本的类型。我在你的帖子中添加了一个-,这样它的格式就正确了。很明显,它在列表和代码块方面有一个bug。javascript/vbscript?如果是javascript,我会说:如果(=)可能是你的问题,你也应该指定脚本的类型。如果这个错误发生很多,你可以考虑写它“向后”,这样你就可以得到一个类似于“<代码>的解析错误”(如果“FLAS1”= FLASH)。
没有compile@Earlz:这对我来说毫无意义,因为如果我能记得这样做,我可以记得使用
==
/:]伙计,我个人并不是因为这个原因才这样做的。不过如果你刚开始编程,从一开始就把这当作一种习惯,而且如果这个错误经常发生,你可能会觉得更方便考虑写“向后”,这样就可以得到像“代码>”这样的解析错误(如果“FLAS1”= FLASH)没有compile@Earlz:这对我来说毫无意义,因为如果我能记住做这件事,我会记得使用
==
/:]伙计,我个人并不是因为这个原因才这么做的。不过如果你刚开始编程,从一开始就养成这个习惯,这会更方便