随笔-8  评论-11  文章-0  trackbacks-0
  2007年7月13日
今天做一个功能需要在一个GridView的模板里中放一个LinkButton,设置其OnClientClick属性(其中需要数据绑定),使其在被点击的时候根据所在的行触发客户端脚本。
然后就出现了一个麻烦的问题,属性需要在最外面加单引,然后套上<%# %>用来写绑定表达式。这个OnClientClick属性我需要拼成一个函数表达式用来执行脚本。可问题在于这个函数的其中一个参数是字符类型,需要用引号扩起来,否则会引起错误。可我已经嵌套了单引号和双引号,无法在嵌套了。试过几种方法,\'不行,&quot是双引号,也不行。最终& #039(没有那个空格,连着写就直接变成'了)就搞定了,ASCII的转义字符。
<asp:LinkButton ID="lbtn" runat="server" OnClientClick='<%# "SetInfo(" + Eval("ID")  + ",this,'" + Eval("Name") + "');"  %>' Text="Groups"></asp:LinkButton>

posted @ 2007-07-13 15:49 RyanLu 阅读(519) 评论(2) 编辑
由于项目需要,需要自己写一个ASP.NET Ajax Extender。上午的工作十分顺利,编译成dll拿到项目里面。结果却出不来期待的效果。一顿查代码,修改了几个弱智的错误,问题依旧。最后用alert输出js里面的属性,发现页面上面设置的几个属性完全没有传递进去。经过一番彻底的查看,客户端的behavior没有任何问题。最终发现导致问题的时在CS代码中控件的属性没有与JS中对应属性设置成相同的名称。



本来认为设置成与js中不同的名字绝对不会有问题的,结果正是这里让我在正确的js代码里面找了一下午的错误,看代码看的头昏脑胀,郁闷啊。


posted @ 2007-07-13 15:12 RyanLu 阅读(231) 评论(0) 编辑