Javascript 未捕获的SyntaxError:Chrome中的意外标识符
我在我的页面中有以下脚本来突出显示地图Javascript 未捕获的SyntaxError:Chrome中的意外标识符,javascript,jquery,vb.net,function,Javascript,Jquery,Vb.net,Function,我在我的页面中有以下脚本来突出显示地图 <script> function highlight(list,win,lose) { var WinParty = win; var LoseParty = lose; var jsVariable = list; var area = document.getElementsByTagName('area') v
<script>
function highlight(list,win,lose)
{
var WinParty = win;
var LoseParty = lose;
var jsVariable = list;
var area = document.getElementsByTagName('area')
var ary=[]
for (var zxc0=0;zxc0<area.length;zxc0++){
ary.push(area);
}
var isfound = false;
for(var i = 0; i < area.length; i++)
{
isfound = false;
for(var j = 0; j < jsVariable.length; j++)
{
if (area[i].getAttribute('title').trim() == jsVariable[j].trim())
{
isfound = true;
$(area[i]).each(function ()//get all areas
{
$(this).addClass("victory");
});
}
}
if(!isfound)
{
$(area[i]).each(function ()//get all areas
{
$(this).addClass("lose");
});
}
}
$(function () {
var data = {};
$('.map').maphilight();
data.alwaysOn = true;
data.fillColor = WinParty;
$('.victory').data('maphilight', data).trigger('alwaysOn.maphilight');
var data = {};
$('.map').maphilight();
data.alwaysOn = true;
data.fillColor = LoseParty;
$('.lose').data('maphilight', data).trigger('alwaysOn.maphilight');
});
}
</script>
当我在Chrome上运行上述代码时,我得到的错误如下
Uncaught SyntaxError: Unexpected identifier
但当我在IE中运行相同的代码时,得到的错误为
SCRIPT1007: Expected ']'.
我猜是关于列表参数的,它是Javascript中的数组
请帮帮我 最后我解决了这个问题 这是从代码隐藏调用脚本的原因:
Dim Script As String = String.Format("highlight({0},{1},{2});", List, WinPartyColor, LosePartyColor)
我有如下改变,现在它运行良好
Dim Script As String = "highlight(" + List + ",'" + WinPartyColor + "','" + LosePartyColor + "');"
这不是
string.Format
调用的问题,您没有在索引'{1}'
,'{2}'
中包含单个引号
请试试这个。哪一行出错?此行:
ary.push(区域)
可能没有做您认为它是做的-区域
已经是一个列表,但是您正在创建一个数组,其中每个元素都引用整个列表。(还请注意,您不需要WinParty
、LoseParty
和jsVariable
变量,您可以根据需要直接使用函数参数。另外,“jsVariable”作为变量名?真的吗?@nnnnnn-Yes。。如果我做错了什么,就让我clear@nnnnnn实际上我喜欢一个错误原因,它是字符串=String.Format(“highlight({0},{1},{2});”,List,WinPartyColor,LosePartyColor)的脚本变暗的原因。。我们必须使用likeDim脚本作为String=String.Format(“highlight({0},{1},{2}”);List,WinPartyColor,LosePartyColor)
但是现在的问题是List
是一个数组,但它作为String
发送
Dim Script As String = "highlight(" + List + ",'" + WinPartyColor + "','" + LosePartyColor + "');"