2013-02-06 120 views
1

我有一個非常基本的形式,我從一個視圖使用模型渲染。 在這種形式我有索姆文本輸入是這樣的:刪除默認的Html.TextBoxFor內聯樣式

<div class="editor-label"> 
    @Html.LabelFor(model => model.UserProfile.FirstName) 
</div> 
<div class="editor-field"> 
    @Html.TextBoxFor(model => model.UserProfile.FirstName) 
    @Html.ValidationMessageFor(model => model.UserProfile.FirstName) 
</div> 

當此網頁上呈現的包含這個討厭的內嵌樣式:

<input 
id="UserProfile_FirstName" 
name="UserProfile.FirstName" 
type="text" 
value="xxx" 
sourceindex="4" 
style="border-style: solid; border-width: 1px; 
    border-color: rgb(238, 50, 50) rgb(240, 80, 80) rgb(240, 80, 80); 
    box-shadow: rgb(250, 230, 230) 1px 1px inset; 
    -webkit-box-shadow: rgb(250, 230, 230) 1px 1px inset;"> 

心中已經嘗試了多種方法去除此,包括

@Html.TextBoxFor(model => model.UserProfile.LastName, null, 
{ @style = "border-width: 0px;" }) 

和類似的,但我添加的內聯樣式添加在我想要刪除的樣式之前,因此它們被覆蓋。

如何刪除或覆蓋此內聯樣式?

回答

1

我不認爲這是TextBoxFor助手的默認行爲。你有沒有在頁面上運行的任何jQuery插件?特別是可能會注入像這樣的內聯樣式的一個?

+0

是的,過了一段時間之後,我的思緒就已經過去了。我有網站上的jquery 1.8.3(jQuery,jquery-ui,jquery.unobtrusive和jquery.validate)和modernizer。我試圖從網站中刪除jquery.validate,並且它消失了。 但我不想不使用jquery.validate。但我想這是另一篇文章的問題。至少我找到了罪魁禍首。謝謝。 –

+0

這真的很奇怪。我以前沒有見過jquery.validate。由於HtmlHelper的源代碼不適用任何樣式屬性,我認爲它與jQuery相關。 –