2016-02-11 89 views
0

如何將值設置爲查詢字符串通行證值查詢字符串

<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路由」,因爲視圖在/ talk/message_board_search「但我希望它是在根路徑「/ message_board_search」所​​以這就是爲什麼我使用的路線「TalkMessageBoardSearch。」

+0

你需要添加查詢字符串提交,看看http://stackoverflow.com/a/6087737/87956 –

回答

0

您正在嘗試使用與郵政的<形式>方法屬性的「方法」您指定的行爲變化。

POST方法不影響查詢字符串

GET方法影響查詢字符串

HTTP Methods: GET vs. POST

HTML < form > method Attribute

如果您需要使用POST,但也修改查詢字符串包含動態數據,您必須使用JavaScript。在這種情況下,您不能單獨使用<表單>方法。 (看Vinay的評論,他有這個鏈接!)