Как передать переменную привязки csharp в функцию Javascript - PullRequest
0 голосов
/ 30 ноября 2010

Я хочу передать связывающую переменную c # в функцию javascript.Вот мой код:

<asp:LinkButton ID="lbID" runat="server" Text="<%#Text%>" OnClientClick="passAccessory('<%#Bind(variable)%>'); "></asp:LinkButton>

Но он всегда выдает ошибку: «htmlfile: не реализовано».

А код не интерпретируется onclick="passAccessory('&lt;%#Bind(variable)%>');"

Кто-нибудь знает, как его решить?

Спасибо.

Редактировать: Я изменил код на

<asp:LinkButton ID="lbID" runat="server" Text="<%#Text%>" OnClientClick="passAccessory('<%# Eval("lblTest.ClientID") %>');"></asp:LinkButton>

И это код, к которому он относится, он использует lblTest.ClientID

<asp:Label ID="lblTest" runat="server" Text='<%#Bind("reference")%>' />

Но я получил ошибку: HttpException. Databinding ... does not contain a property with the name lblTest.Есть ли что-то не так с моим кодом.

Редактировать: Эти сообщения дали мне подсказку.

http://www.west -wind.com / Weblog / posts / 5364.aspx

Я пытаюсь научиться связывать коллекцию IEnumerable LINQ сповторитель

Теперь я хочу использовать

<asp:LinkButton ID="lbTest" runat="server" Text='<%#Text%>' OnClientClick='<%#string.Format("passAccessory(\"{0}\");", Eval("Ref"))%>'></asp:LinkButton>

Ответы [ 3 ]

5 голосов
/ 30 ноября 2010

Вы не хотите двустороннее связывание, а скорее Eval.

<asp:LinkButton ID="lbID" runat="server" Text="<%#Text%>" OnClientClick='passAccessory(\"<%# Eval("variable") %>\");'></asp:LinkButton>
2 голосов
/ 30 ноября 2010

Вы можете легко это сделать, изменив событие OnClientClick с Code-Behind.

lbID.OnClientClick = "passAccessory(' " + variable + "')";
2 голосов
/ 30 ноября 2010

Я давно не делал веб-форм ASP.NET, но считаю, что так должно быть:

OnClientClick="<%# string.Format("passAccessory('{0}');", Container.DataItem("variable")) %>"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...