onclick = '<%# DataBinder.Eval(Container.DataItem,"LayId","show(Lay{0})")%>' 求解释

onclick='<%#DataBinder.Eval(Container.DataItem,"LayId","show(Lay{0})")%>'这句话什么意思???求解... onclick = '<%# DataBinder.Eval(Container.DataItem,"LayId","show(Lay{0})")%>' 这句话什么意思???求解释 展开
 我来答
百度网友ea1c09c
2012-08-14 · TA获得超过1004个赞
知道小有建树答主
回答量:856
采纳率:0%
帮助的人:1300万
展开全部
这种写法很怪,思路很特殊
我猜show() 应该是一个方法,它需要一个参数
DataBinder.Eval是用来绑定字段的,最后那个参数是字符串格式转换,即转换成show(Lay1),
这里的Lay1是假设那个读到的LayId值为1
最后得到的值应该是 onclick="show(Lay1)"
这样你清楚了吧
lxcwh09
2012-08-14 · TA获得超过1267个赞
知道小有建树答主
回答量:1667
采纳率:0%
帮助的人:1244万
展开全部
其实你这个写发已经过时了,现在你应该可以改写成
onclick = 'show(<%# Eval("LayId")%>)'
当然,我也可以解释一下你写的绑定表达式,

首先,你是要绑定字段名为LayId的这个字段,但是这个地方你想把他格式化成一个客户端脚本函数show(x);
x是一个变量,你需要用你取出的LayId这个字段的值来代替,{}这个是个字符串格式化的一个占位符,lay{0}
表示用你的绑定变量的第一个值来替换{0},所以如果你的这一项的LayId=2那么最后输入结果是
onclick = 'show(Lay2)'
不过我觉得,如果你在该页面上面没有定义Lay2这个变量如:var Lay2=8
那么你这个方法有点问题,如果你show(x)中x是要接收一个字符串,显然你应该把show(Lay{0})改成show(\"Lay{0}\")。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式