2013-02-12 15 views
0

我創建了一個MVC-3應用程序(一旦我們創建它,我們就會獲得一個已經開發的登錄屏幕)。它使用了工具箱中的HTML組件來創建文本框,標籤等。但是我想使用工具箱中的標準組件。我如何用標準組件替換這些HTML組件。將HTML組件更改爲標準組件

當用戶點擊登錄按鈕時,用戶名和密碼在我們提供的默認示例應用程序中得到認證。我不想改變它的功能,但我想要的只是將窗體組件更改爲工具箱中的標準組件。

我該怎麼做?

<% using (Html.BeginForm()) { %> 
    <%: Html.ValidationSummary(true, "Login was unsuccessful. Please correct the errors and try again.") %> 
    <div> 
     <fieldset> 
      <legend>Account Information</legend> 

      <div class="editor-label"> 
       <%: Html.LabelFor(m => m.UserName) %> 
      </div> 
      <div class="editor-field"> 
       <%: Html.TextBoxFor(m => m.UserName) %> 
       <%: Html.ValidationMessageFor(m => m.UserName) %> 
      </div> 

      <div class="editor-label"> 
       <%: Html.LabelFor(m => m.Password) %> 
      </div> 
      <div class="editor-field"> 
       <%: Html.PasswordFor(m => m.Password) %> 
       <%: Html.ValidationMessageFor(m => m.Password) %> 
      </div> 

      <div class="editor-label"> 
       <%: Html.CheckBoxFor(m => m.RememberMe) %> 
       <%: Html.LabelFor(m => m.RememberMe) %> 
      </div> 

      <p> 
       <input type="submit" value="Log On" /> 
      </p> 
     </fieldset> 
    </div> 
<% } %> 
+0

什麼? Html組件與標準組件?什麼工具欄? – 2013-02-12 21:51:12

+0

錯字,應該是ToolBox – user1315906 2013-02-12 21:56:41

回答

1

你談論這些:

<%: Html.TextBoxFor(m => m.UserName) %> 
<%: Html.ValidationMessageFor(m => m.UserName) %> 

這些被稱爲HTML輔助。他們在asp.net mvc中用於生成可以很好地與mvc模型綁定器一起使用的html。如果你想用純HTML替換它們,你可以隨時查看源代碼,看看所提供的HTML是什麼,並將其粘貼到它的位置,儘管我個人看不到這一點。這沒有什麼好的可能。

,但是這是上面的兩行渲染:

<input data-val="true" data-val-required="The User name field is required." id="UserName" name="UserName" type="text" value="" /> 
<span class="field-validation-valid" data-valmsg-for="UserName" data-valmsg-replace="true"></span> 
0

,萊斯看看我undesrtand如果當你說標準控制你的意思是ASP.NET服務器端控件,你不能我的意思是至少不使用MVC和的理由是「事業就像是混合蘋果和香蕉如果您選擇MVC,則必須使用WebForms或MVC,因此必須將邏輯放置在控制器中,以便在單擊該按鈕所在的表單時即可調用該特定操作,但如果您不想,所以使用一個普通的舊的ASPX頁面添加服務器端控件,並將按鈕的點擊事件的邏輯,但你不能混合MVC和WebForms沒有任何意義(我說這是一個很好的方式:))他們是不同的範例。

+0

如果我像這樣使用它' '這是好嗎? – user1315906 2013-02-12 22:03:44

+0

您不能在MVC上使用,MVC是一種完全不同的方法,如果您希望您可以使用asp.net服務器端控件( asp:TextBox),然後將登錄邏輯移至asp:Button點擊事件。你不能混用MVC和WeForms,實際上你不應該這樣做。 – 2013-02-13 18:08:35