精通
英语
和
开源
,
擅长
开发
与
培训
,
胸怀四海
第一信赖
近期编写JQuery的DataTable动态加载数据功能,动态数据里包含在单元格里生成a链接部分,用ASP.NET后台代码生成Table这类a标签内容时,a的onclick对应一个方法,这个方法处理时前后遇到了如下2个错误:
在 (未知源位置) 中的第 25 行第 4 列处发生了 JavaScript 关键错误\n\nSCRIPT1006: 缺少 ')'
在 (未知源位置) 中的第 28 行第 22 列处发生了 JavaScript 关键错误\n\nSCRIPT1002: 语法错误
在出错时,VS也有界面,可以选择停止调试和继续,背景是生成的前台代码。对着这些前台代码,找不到错误。比如()里要求5个参数,提示的代码行确实是5个啊,一眼看上去就是对的。后来才想明白,出错的代码,是还没生成的,你再分析现有代码是没用的!
因为新加的ASP.NET后台代码是从前面某行代码拷贝过来的,所以就对前后2行进行查对,发现上行有</td>,这行也有</td>,去掉多余的</td>,还是有问题。再看,看着也没问题啊,就想从自己的修改入手查。
自己新加的参数有多个,每个都对应数据表里的一列,用workbench打开mysql表,显示数据,发现有些列内数据是空的,想一想,有没有可能是这个问题造成的呢?
故,把一些字符串变量预先给定些值,如果表内数据为空,则提供给前台的参数会是预定值,不是空值。这样改后,问题解决。
在onclick后面带的方法里写参数,形如:a(1,,,),让中间有空的参数出现,就会导致提示:
在 (未知源位置) 中的第 25 行第 4 列处发生了 JavaScript 关键错误\n\nSCRIPT1006: 缺少 ')'
在 (未知源位置) 中的第 28 行第 22 列处发生了 JavaScript 关键错误\n\nSCRIPT1002: 语法错误
这次修改代码是客户新加的需求,所以改的仓促,在ASP.NET后台代码处理时,没考虑空字符串情况,给前台提供的参数是空的,就导致了此情况发生。
所以,大家明白为什么程序员会敌视改需求了吧!
另,网页前台的调试确实麻烦,不如写单纯的软件好调试。