Ответ 1
Да. Что вы хотите сделать, это:
onclick='<%# "PopulateTicketDiv(" +Eval("SHOW_ID") + " );" %>'
<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()) %>'
Над строкой должна работать независимо от типа данных параметров
Try
<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", вы можете установить onclick из бэкэнда в OnRowDataBound, если это в сетке/повторителе или на странице_load, если нет.
Вы можете использовать этот синтаксис в gridview, повторителе или..etc.
<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
}
Pls Проверьте этот код
onclick = '<% # Eval ( "DocumentPath", "Chk (\" {0}\ ")" )% > '