Кнопка ссылки ASP.NET Серверный тег сформирован неправильно
Я пытаюсь добавить кнопку в виде сетки, которая перенаправит меня на другую страницу и передаст идентификатор фильма. Это мой код
<asp:Button ID="Button1" runat="server" CausesValidation="False"
PostBackUrl="~/Add/CheckMovie.aspx?movie=<%#Eval("mov_id")%>"
/>
Некоторое время назад в другом приложении я использовал похожий код, и он работал нормально
<a href="editUser.aspx?usr=<%# Eval("usr") %>"><%# Eval("usr") %></a>
Это потому, что я использую другой тег, или, может быть, из-за URL?
3 ответа
Решение
PostBackUrl='<%# "~/Add/CheckMovie.aspx?movie=" + Eval("mov_id") %>'
В зависимости от того, как вы получаете значение mov_id
вам может быть лучше добавить код в page_load
метод, как то так
HTML
<asp:Button ID="Button1" runat="server" CausesValidation="False" PostBackUrl="" />
Код позади
Button1.PostBackUrl = "~/Add/CheckMovie.aspx?movie=" + mov_id;
Как упоминалось в комментарии выше, это связано с тегом server внутри элемента управления ASp:Button. Вы можете изменить его на кнопку HTML следующим образом:
<button class="button" id="submitreorder" onclick="parent.location='<%=ResolveUrl("~/order/ShoppingCart") %>/delete/<%# Eval("Item_ID") %>'">Remove</button>