我有一個asp.net mvc3站點,在單擊後退按鈕時顯示一些奇怪的行爲。我有一個文本輸入的表單,該值設置爲一個屬性上我的模型,像這樣:使用瀏覽器後退按鈕後顯示錯誤值的文本輸入
@using (Html.BeginForm("Search", "Home", FormMethod.Get, new { name = "searchForm" }))
{
<div>
<input id="term" type="text" name="Term" value='@Model.Term' />
<input type="submit" value="Search" />
</div>
}
一切的偉大工程,在瀏覽器中使用後退按鈕時除外。如果我輸入「ABC」,然後提交我的表單,輸入「XYZ」並再次提交,然後返回我仍然在文本字段中看到「XYZ」,但是當我使用瀏覽器開發人員工具檢查HTML時,它顯示正確的值的「ABC」(正確的值也在查詢字符串中)。
我在頁面上還放置了另一個地方,我放棄了@ Model.Term的相同值,但是在那個地方它正確地顯示爲「ABC」。
任何想法?我覺得它必須是我做的一些愚蠢的事情,但我無法弄清楚它:)
表單使用Get而不是Post來提交,這仍然適用嗎? –
這個想法基本上是一樣的,是的。重新定向,然後離開你。 – mjwills
您使用GET表單而不是POST表單的任何特定原因? – mjwills