2016-02-11 2 views
0

Как установить значение в строке запросаPass значение из поля строк запроса

<form asp-route="TalkMessageBoardSearch" asp-route-talk_query="[need value from "talk_query" field]" method="post" class="form" role="form"> 
    <input type="hidden" /> 
    <div class="input-group"> 
     <input class="form-control" id="talk_query" name="talk_query" placeholder="Search Talk" /> 
     <div class="input-group-btn"> 
      <button type="submit" class="btn btn-primary"><span class="glyphicon glyphicon-search" aria-hidden="true"></span></button> 
     </div> 
    </div> </form> 

При нажатии на кнопку на POST, он перенаправляет на «/ message_board_search», но он не имеет строку запроса , Я хочу, чтобы он отображал «/ message_board_search? Talk_query = query1». Как получить значение из поля id = «talk_query» и поместить его в строку запроса при нажатии POST. Прямо сейчас «asp-route-talk_query» может быть жестко запрограммирован как asp-route-talk_query = «hardcoded»

Я использовал «asp-route», потому что представление находится в/talk/message_board_search », но я хочу, чтобы это было в корневом каталоге «/ message_board_search» так, поэтому я использовал маршрут «TalkMessageBoardSearch.»

+0

Вам нужно добавить querystring на submit, посмотрите http://stackoverflow.com/a/6087737/87956 –

ответ

0

вы пытаетесь использовать < форма> атрибут метод с POST «метод» вы определяете изменения поведения:.

Метод POST не влияет на строку запроса

Метод GET влияет на строку запроса.

HTTP Methods: GET vs. POST

HTML < form > method Attribute

Если вам нужно использовать POST, но также изменить строку запроса, содержащая динамические данные, вы должны использовать Javascript. В этом случае вы не можете использовать метод формы <. (см. комментарий Vinay, у него есть ссылка на это!)

Смежные вопросы