将 Eval 从 ASPX 传递给 Javascript 函数作为参数
本文关键字:函数 Javascript 参数 Eval ASPX | 更新日期: 2023-09-27 17:47:46
<a id="lblShowTimings"
runat="server"
title='<%# Eval("SHOW_Name") %>'
onclick='PopulateTicketDiv(<%#Eval("SHOW_ID") %>)'> <-- this is the problem
%#Eval("SHOW_Time") %>
</a>
Eval可以作为参数传递给javascript函数吗?如果是这样,语法是什么?
是的。 不过,您要做的是:
onclick='<%# "PopulateTicketDiv(" +Eval("SHOW_ID") + " );" %>'
当您要将字符串作为参数传递时,上述解决方案会产生问题,您可以使用以下语法来完成:
OnClientClick='<%# String.Format("javascript:return displayDeleteWarning('"{0}'")", Eval("ItemName").ToString()) %>'
无论参数数据类型如何,上面的行都应该有效
尝试
<script type="javascript">
//Pollute the global namespace
var ticketDivID = <%= SHOW_ID %>
</script>
<a id="lblShowTimings" runat="server" title='<%# Eval("SHOW_Name") %>' onclick='PopulateTicketDiv(ticketDivID)'> <%#Eval("SHOW_Time") %></a>
附带说明一下,因为你有runat="server",你可以在OnRowDataBound的后端设置onclick,如果这是在网格/中继器中,或者如果不是,则在page_load上设置。
您可以在网格视图、中继器或..等。
<asp:ImageButton
ID="Imagebutton1" runat="server"
ImageUrl="../../common/images/pencil.gif"
OnClientClick='<%# String.Format("EditBankAccount('"{0}'");", Eval("BankAccountID")) %>'
OnClick="ImgBankAccountsDGEdit_Click"/>
你的 JavaScript 函数将是:
function EditBankAccount(bankaccountid) {
// Your code goes here
// return true OR false based on your requirement
}
请检查此代码
onclick='<%#Eval("DocumentPath","Chk(''"{0}''"("( %>'
基本上你需要转义引号
<asp:CheckBox onclick='<%# "ToggleByPassValidationRules(" + "'"" + Eval("Name") + "'"" + ");" %>' ID="chkIsRuleActive" runat="server" Enabled="false" />