может ли URL-адрес действия формы содержать значения строки запроса?

может ли URL-адрес действия формы содержать значения строки запроса?


person Blankman    schedule 03.09.2010    source источник
comment
Измените метод на GET вместо POST   -  person xandercoded    schedule 04.09.2010
comment
Пример кода об этом для более подробного объяснения вопроса и более подробной информации для ответа.   -  person Kiquenet    schedule 26.01.2017


Ответы (3)


Да

оно может.

Но

когда method="get", тогда строка запроса будет удалена и заменена входными именами/значениями формы (поскольку элементы управления формы - это те, которые создают строку запроса GET).

<form method="get" action="?param=foo">
    <input type="hidden" name="param" value="bar" />
</form>

отправит param=bar

Чтобы сохранить значение, вы должны указать method="post" в form.

<form method="post" action="?param=foo">
    <input type="hidden" name="otherparam" value="bar" />
</form>

отправит param=foo&otherparam=bar

<form method="post" action="?param=foo">
    <input type="hidden" name="param" value="bar" />
</form>

отправит param=foo&param=bar (поэтому, в зависимости от того, как вы обрабатываете запрос, вы можете получить либо значение массива, либо неожиданные результаты).

person Kamafeather    schedule 23.11.2017

Да, оно может.

(клавиши)

person Matti Virkkunen    schedule 03.09.2010
comment
@Kiquenet: Это вопрос, можете ли вы сделать X, для него вряд ли нужен пример кода. Я скорее проголосую за то, чтобы закрыть это как обман лучшего вопроса, о котором больше говорят. - person Matti Virkkunen; 26.01.2017

Я только что проверил, используя сокращенный тестовый пример:

  • Form.htm, который содержит форму с action из default.aspx?query=1 и кнопку отправки.
  • default.aspx, который содержит код в Page_Load для записи Request.QueryString["query"]

Результатом, который я получил при нажатии на кнопку, была страница, которая гласила:

1

Итак, да.

person Rob    schedule 03.09.2010