Серверный тег не правильно сформирован ошибка

Я знаю, что есть много сообщений об этой ошибке, но я просмотрел все из них и не смог заставить ее работать. Это, наверное, что-то очень маленькое, что я пропускаю.

Это код, который я имею сейчас, в компоненте asp:Button

<asp:Button ID="btn_profile" runat="server" Text="Bekijk de wenslijst"
CssClass="wenslijst_preview_btn" 
OnClick="btn_goToChild_Click(<%# Eval("pk_child_id") %>)"/>

Я пробовал несколько вещей, например, следующее:

OnClick='btn_goToChild_Click(<%# Eval("pk_child_id") %>)'

Но тогда я получаю следующую ошибку:

preprocessor directives must appear as the first non-whitespace character on a line

Если вам нужно увидеть больше кода, дайте мне знать!

4 ответа

Решение
<asp:Button ID="btn_profile" runat="server" Text="Bekijk de wenslijst"
 CssClass="wenslijst_preview_btn" CommandArgument='<%# Eval("pk_child_id") %>'
 OnClick="btn_goToChild_Click"/>
  protected void btn_goToChild_Click(object sender, EventArgs e)
    {
        Button btn= (Button) sender;
        if (btn==null) return;
        var id =btn.CommandArgument;
         // Or int id=(int)btn.CommandArgument;
    }

OnClick является событием на стороне сервера, поэтому должно быть просто именем обработчика события на стороне сервера. OnClientClick (где доступно) - это обработчик событий на стороне клиента, поэтому для оценки потребуется выражение JavaScript.

Пытаться

  <asp:Button ID="Button1" runat="server" Text="Button"
             OnClientClick='btn_goToChild_Click(<%# Eval("pk_child_id") %>)' /> 

Если вы хотите использовать выражение Javascript, используйте OnClientClick не OnClick, Это разные побочные события.

OnClick используется только для методов на стороне сервера, для вызовов на стороне клиента следует использовать атрибут "OnClientClick".

Другие вопросы по тегам