未捕获的SyntaxError:意外标识符在Chrome中 [英] Uncaught SyntaxError: Unexpected identifier IN Chrome
本文介绍了未捕获的SyntaxError:意外标识符在Chrome中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的页面中有以下脚本来突出显示地图。
< script>
函数高亮(列表,赢,输)
{
var WinParty = win;
var LoseParty =输入;
var jsVariable = list;
var area = document.getElementsByTagName('area')
var ary = []
(var zxc0 = 0; zxc0< area.length; zxc0 ++){
ary.push(area);
}
var isfound = false;
for(var i = 0; i< area.length; i ++)
{
isfound = false; (var j = 0; j
if(area [i] .getAttribute('title')。trim() == jsVariable [j] .trim())
{
isfound = true;
$(area [i])。each(function()//获取所有区域
{
$(this).addClass(victory);
}); ($!
$ b)($ is $)
{
$(area [i])。each(function()//获取所有区域
{
$(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。 ('maphilight',data).trigger('alwaysOn.maphilight');
});
}
< / script>
我从Code Behind(VB.Net)调用这个脚本如下
Dim Serializer = New System.Web.Script.Serialization.JavaScriptSerializer()
Dim List = Serializer.Serialize(Values)
WinPartyColor = Hex(Color.Blue.ToArgb())。Substring(2)
LosePartyColor = Hex(Color.Red.ToArgb())。Substring(2)
Dim Script As String = String.Format(highlight({0},{1},{2});,List,WinPartyColor,LosePartyColor)
ScriptManager.RegisterStartupScript(ElectionResultUpdatePanel,ElectionResultUpdatePanel.GetType() HighLighting,Script,True)
当我在Chrome上面运行代码时,作为
未捕获的SyntaxError:意外的标识符
但当我在IE中运行相同的代码时,出现错误为
$ b $ pre $ SCRIPT1007:Expected'] 。
我的猜测是关于List参数,它是Javascript中的数组。
请帮我解决。
解决方案
最后,我解决了这个问题,
调用脚本:
Dim Script As String = String.Format(highlight({0},{1}, {2});,List,WinPartyColor,LosePartyColor)
我有如下改变它的工作正常。
Dim Script As String =highlight(+ List +,'+ WinPartyColor +', '+ LosePartyColor +');
I have following script in my page to highlight a map.
<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>
I am calling this script from Code Behind (VB.Net) as follows
Dim Serializer = New System.Web.Script.Serialization.JavaScriptSerializer()
Dim List = Serializer.Serialize(Values)
WinPartyColor = Hex(Color.Blue.ToArgb()).Substring(2)
LosePartyColor = Hex(Color.Red.ToArgb()).Substring(2)
Dim Script As String = String.Format("highlight({0},{1},{2});", List, WinPartyColor, LosePartyColor)
ScriptManager.RegisterStartupScript(ElectionResultUpdatePanel, ElectionResultUpdatePanel.GetType(), "HighLighting", Script, True)
When i'm running above code in Chrome i'm getting error as
Uncaught SyntaxError: Unexpected identifier
but when i run same code in IE, getting error as
SCRIPT1007: Expected ']'.
My guess is about List argument, which is array in Javascript.
Please help me out.
解决方案
Finally I fixed the problem,
It is cause of calling script from Code behind:
Dim Script As String = String.Format("highlight({0},{1},{2});", List, WinPartyColor, LosePartyColor)
I have change is as follows, now it's working fine.
Dim Script As String = "highlight(" + List + ",'" + WinPartyColor + "','" + LosePartyColor + "');"
这篇关于未捕获的SyntaxError:意外标识符在Chrome中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文