问题描述
我在DataGrid建了个超连接列,当调试时发现,点击改列时,会提示脚本错误,提示该列的值没有定义?这是什么问题呢?该列代码:<asp:HyperLinkColumnDataNavigateUrlField="salesobject"DataNavigateUrlFormatString="javascript:alert({0})"DataTextField="agentName"HeaderText="名称"></asp:HyperLinkColumn>
解决方案
解决方案二:
js代码错误javascript:alert({0})没有获取到参数值
解决方案三:
javascript:alert({0})没有获取到参数值没有获取到参数值是什么意思?{0}这个不是已经能获取了吗?
解决方案四:
把js贴上
解决方案五:
DataNavigateUrlFormatString="javascript:alert({0})"我就在这里面随便写了个alert来测试,但提示alert(aa)没有定义,中aa没有定义
解决方案六:
参考<asp:HyperLinkColumnDataNavigateUrlField="classID"DataNavigateUrlFormatString="javascript:alert({0})"DataTextField="classID"HeaderText="snhame"NavigateUrl="snhame"></asp:HyperLinkColumn>
解决方案七:
<asp:HyperLinkColumnDataNavigateUrlField="classID"DataNavigateUrlFormatString="javascript:alert({0})"DataTextField="classID"HeaderText="hyperLinkColumn"></asp:HyperLinkColumn>
发生LZ错误的原因,有可能是输入错误.仔细检查一下.像字段名有没有拼写错误等我写了一个测试了一下,没有LZ所说的问题
解决方案八:
DataNavigateUrlFormatString="javascript:alert({0})"我就在这里面随便写了个alert来测试,但提示alert(aa)没有定义,中aa没有定义-------------------alert(aa)当然会出错alert()后面的参数必须为字符串,或是字符串变量,你没有加引号,所以aa会被认为成变量.当然就会提示没有定义你可以改为alert("aa")测试一下
解决方案九:
symbol441说的对DataNavigateUrlFormatString="javascript:alert({0})"改成DataNavigateUrlFormatString="javascript:alert('{0}')"试试
解决方案十:
如果加了''就会提示rows.0不是对象或空
解决方案十一:
我也觉得很奇怪,应该不会有错的,但结果就是提示脚本错误!
解决方案十二:
用模板列加载Hyperlink控件尽量不用超连接列有弊端
解决方案十三:
把datagrid超连接列的enable改成false后还是可以点击不便于操作