1. 程式人生 > >MVC的ViewData自動給Razor寫的input賦值

MVC的ViewData自動給Razor寫的input賦值

現在 post 裏的 img 技術 src ima http rdquo

問題:

寫編輯的時候,突然發現,沒有值的model,突然出現了值,而且值是ViewData中值。

後臺:

this.ViewData["test"] = "測試";

前臺:

<%= Html.TextBox("test", Model.test) %> //情況一,其中Model.test 為null
<%= Html.TextBox("test") %> //情況二

結果:

技術分享圖片

上述兩種情況,均出現了值,值是this.ViewData["test"]的值 ,“測試” 。

現在我們更改前臺的html,給他一個初值123。

<%= Html.TextBox("test","123") %>

技術分享圖片

給完初值以後,test的值變為123。

結論:

1、當你以Razor寫 input 的時候,並且value為 null 的時候。 例:<%= Html.TextBox("test") %>

2、後臺有個與該 input 的id一模一樣的名字的ViewData。 例:this.ViewData["test"] = "測試";

此時,就會自動把ViewData裏的值,賦值到這個input裏。

MVC的ViewData自動給Razor寫的input賦值