Отправка формы для исправления URL в ASP.net с использованием BaseHREF

По неизбежным причинам дизайна, в моей голове тег на моем верхнем уровне MasterPage Я имею:

<base href="http://127.0.0.1/" />

URL страницы, с которой у меня возникли проблемы:

http://127.0.0.1/store/checkout

На этом content page У меня есть контроль:

<asp:Button runat="server" Text="Payment ▶" />

Однако при нажатии он отправляет форму:

http://127.0.0.1/checkout

Который выбрасывает 404, так как это не так store/checkout так, как это должно быть.

Как я могу решить эту проблему, чтобы форма отправлялась по правильному URL-адресу, и она должна изящно ухудшаться, чтобы, если JS отключен, она публиковалась правильно, вот почему, к сожалению, я не могу принять какие-либо решения Javascript!

1 ответ

Doh! Я боролся с этим в течение многих дней и только наткнулся на ответ.

На главной странице я создал новый метод:

public void changeFormAction(string Action)
{
    MainForm.Action = Action;
}

Затем со страницы содержания я звоню:

Master.changeFormAction("/store/checkout");

Это исправляет это!

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