Передать несколько аргументов через Eval в функцию Javascript - PullRequest
2 голосов
/ 18 июня 2009

Я очень стараюсь передать три параметра в функцию javascript из шаблонной таблицы вида сетки:

Для одного параметра он работает нормально:

<asp:HyperLink ID="hypComment" runat="server" Font-Bold="True"
NavigateUrl='<%# Eval("CCN", "javascript:ShowCommentPopUp({0});") %>'>Add
</asp:HyperLink>

где CCN - мой столбец в gridview. Это фактически передаст ccn, в котором нажата строка:

Я хочу передать еще два параметра: «Имя» и «Статус» - соответствующие столбцы в качестве 2-го и 3-го аргументов для функции ShowCommentPopUp. Я пробовал много способов, но в итоге все синтаксические ошибки. Много времени потрачено.

например:

NavigateUrl='<%# Eval(["CCN", "NAME", "javascript:ShowCommentPopUp({0}, {1});")

и т. Д.

Если кто-нибудь может мне помочь, это очень ценится.

спасибо, Aparna

Ответы [ 3 ]

1 голос
/ 13 февраля 2013

С помощью этого кода вы можете решить вашу проблему:

<asp:HyperLink ID="hypComment" runat="server" Font-Bold="True" NavigateUrl="#" OnClick="<%# String.Format("javascript:return ShowCommentPopup(""{0}"",""{1}"")",Eval("CCN"),Eval("parametername"))  %>">
    Add
</asp:HyperLink>
1 голос
/ 18 июня 2009

Вы имеете в виду NavigateUrl='<%# Eval(["CCN", "NAME"], "javascript:ShowCommentPopUp({0}, {1});")?

0 голосов
/ 05 августа 2014

У меня была та же проблема и множество проблем, чтобы заставить ее работать.

В конце концов это сработало для меня: вы должны поместить полученные значения функций eval между кавычками. И эти кавычки должны быть сохранены в формате html, поэтому замените символ 'на'

Для меня, по крайней мере, только тогда показывался мой диалог, содержащий три параметра.

<ItemTemplate>
   <asp:Button ID="btnEdit" CssClass="btnmaatwerksmall" runat="server" Text="Wijzig"
       OnClientClick='<%# String.Format("OpenChildNietInEnterprise(&apos;{0}&apos;,&apos;{1}&apos;,&apos;{2}&apos;);", Eval("CursusNaam"), Eval("VerwachteOmzetJaar"), Eval("VerwachteOmzetKomendeJaren")) %>' />
 </ItemTemplate>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...