postbackurl используя get вместо post - PullRequest
2 голосов
/ 11 ноября 2011

Я занимаюсь разработкой сайта с использованием asp.net c # и хочу разместить форму внутри страницы.Теперь, когда у aspx-страниц есть тег формы, я не хочу вкладывать в них другую форму, так как это сделает мой HTML недействительным.Но мне нужна эта форма, чтобы использовать GET, а не POST.Я знаю, что могу изменить URL обратной ссылки в кнопке asp :.Можно ли это сделать без использования логики в codbehind?

  1. Измените метод на GET только для этой формы, но не для каждой вещи на странице
  2. измените цель на _blank, если это возможно.

Пример в HTML того, что я хочу.

<form action="http://maps.google.co.uk/maps" method="get">
<p><label for="saddr">Your postcode</label>
<input type="text" name="saddr" id="saddr" value="" />
<input type="submit" value="Go" />
<input type="hidden" name="daddr" value="[destination]" />
<input type="hidden" name="hl" value="en" /></p>
</form>

Ответы [ 2 ]

0 голосов
/ 11 ноября 2011

Вы можете иметь несколько форм в HTML.Страница ASP.NET также поддерживает несколько тегов формы, однако только один из них может быть серверной формой (runat = "server").

Поэтому я предлагаю вам добавить еще один тег формы на свою страницу - что-то вроде

...
<body>
  <form runat="server">
    ... server controls etc

  </form>
  <!-- your form -->
  <form action="http://maps.google.co.uk/maps" method="get">
    <p><label for="saddr">Your postcode</label>
    <input type="text" name="saddr" id="saddr" value="" />
    <input type="submit" value="Go" />
    <input type="hidden" name="daddr" value="[destination]" />
    <input type="hidden" name="hl" value="en" /></p>
  </form>
</body>
</html>

Обратите внимание, что вы не можете поместить какой-либо серверный элемент управления в свой HTML-тег.Поэтому вы должны использовать элементы управления html и управлять ими в коде страницы с помощью объекта Request.

0 голосов
/ 11 ноября 2011

вы можете использовать jquery для достижения этой цели

$(document).ready(function() {
 $("#buttonId").click(function() {
   $("#formId").attr("method", "get");
 });
});

приведенный выше фрагмент, срабатывает при нажатии кнопки с идентификатором «buttonId». он изменяет атрибут метода формы с идентификатором 'formId'

...