首页 新闻 赞助 找找看

C#在前台调用js脚本传参问题。

0
[待解决问题]

如题, 我在前台写了个

function show(id,type){
//函数体省略
.....
}


然后再Grid中绑定的时候想要调用

而参数呢, 我想用Grid列中绑定的值。比如:

  <asp:LinkButton runat="server" ID="hreftag" Text="详细" 
onClick="return show(<%#Eval('id')%>,<%#Eval('type')%>)"
></asp:LinkButton>--%>

如此这般,符号什么的也试了好多次,最好的结果是把<%#Eval('id')%>把它当做字符串传递了,就是并没有把值给调过来。

 

我是不是思路错误啊?

井绳竖不起来的主页 井绳竖不起来 | 初学一级 | 园豆:3
提问于:2013-06-29 09:18
< >
分享
所有回答(3)
0

思路没错,写法有点问题。首先js区分大小写,你应该用onclick,然后参数需要用+号等构造。这个最好改成如下形式

onclick='return show('+<%#Eval("id")%>+','+<%#Eval("type")%>+')'
纯手打,你自己测试下...
幻天芒 | 园豆:37175 (高人七级) | 2013-06-29 10:10
0

你需要加引号吧参数包含进去

看页面的源代码,你就能知道绑定的是字符串还是事件了

对着源码,多调试调试,无非就是加个 引号 包含变量进行传值

二十三号同学 | 园豆:974 (小虾三级) | 2013-06-29 10:22
0

<%#Eval("id")%  这个Eval相当于一个方法,后台方法调用传string  

例如 aa("")是用的双引号。

你引号加的不对。

'return show(<%#Eval("id")%>,<%#Eval("type")%>)' 改成这样试试

"return show(<%#Eval("id")%>,<%#Eval("type")%>)"这样也应该可以

如果前台拼着困难,可以写在后台的ItemDataBound方法,在后台添加

cclient | 园豆:264 (菜鸟二级) | 2013-07-01 12:17
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册