我的链接按钮 -
<asp:LinkButton runat="server" ID="lbtnEdit" Text="edit" OnClientClick="javascript:msgDisp('<%# Eval(LocationId).toString() %>')" />
javascript msgDisp 是-
<script type="text/javascript" language="javascript">
function msgDisp(lid) {
alert(lid);
}
</script>
但它并没有在弹出窗口中给出 LocationId,而是整个字符串 出现在弹出消息中。如何在 javascript 中传递 Eval 值。
您可以构建的全部内容OnClientClick
作为代码括号内的字符串,它将像您期望的那样输出。
<asp:LinkButton runat="server" ID="lbtnEdit" Text="edit"
OnClientClick='<%# "msgDisp(" + Eval("LocationId") + ");" %>' />
这是假设 LocationId 是一个有效的数字 - 渲染时没有引号来包装您的值,因此输出类似msgDisp(hello);
即将破裂。我不知道如何以这种方式解决这个问题,所以如果你必须这样做,我建议你设置OnClientClick
服务器端期间ItemDataBound
事件。如果父母是 a,这就是它想要的Repeater
控制。
protected void notesRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
MyClass item = (MyClass)e.Item.DataItem;
LinkButton lbtnEdit = (LinkButton)e.Item.FindControl("lbtnEdit");
lbtnEdit.OnClientClick = string.Format("msgDisp('{0}');", item.LocationId);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)