2016-04-25 18 views
1

一個非常簡單的例子,有一些奇怪的事情發生。從來沒有注意到它,但這是我第一次看。MVC和jQuery驗證,本地主機上的不同HTML輸出與生活

給自己用類似領域的典範:

[Display(Name = "Full Name")] 
[Required(ErrorMessage = "Please enter your Full name")] 
[RegularExpression(@"^((\b[a-zA-Z]{2,40}\b)\s*){2,}$", ErrorMessage = "Please enter your first and last name.")] 
public string FullName { get; set; } 

Razor視圖:

<div class="form-group"> 
@Html.TextBoxFor(m => m.FullName, new { placeholder = "Full Name", @Class = "form-control input-sm" }) 
@Html.ValidationMessageFor(m => m.FullName) 
</div> 

當我提交的表單無效,我得到一個錯誤信息,我應該......但本地主機上的HTML與服務器上的HTML不同。

Localhost給我一個跨度id =「FullName-錯誤」與一些詠歎調標籤。 Live服務器爲我提供了=「FullName」的範圍,沒有aria標籤。製作中的文件不過是發佈和上傳。

我的本地生成以下(這是檢查它在Chrome調試窗口):

<div class="form-group"> 
<input class="form-control input-sm input-validation-error" data-val="true" data-val-regex="Please enter your first and last name." data-val-regex-pattern="^((\b[a-zA-Z]{2,40}\b)\s*){2,}$" data-val-required="Please enter your Full name" id="FullName" name="FullName" placeholder="Full Name" type="text" value="" aria-required="true" aria-invalid="true" aria-describedby="FullName-error"> 
<span class="field-validation-error" data-valmsg-for="FullName" data-valmsg-replace="true"> 
<span id="FullName-error" class="">Please enter your Full name</span> 
</span> 
</div> 

直播服務器生成以下內容:

<div class="form-group"> 
<input class="form-control input-sm input-validation-error" data-val="true" data-val-regex="Please enter your first and last name." data-val-regex-pattern="^((\b[a-zA-Z]{2,40}\b)\s*){2,}$" data-val-required="Please enter your Full name" id="FullName" name="FullName" placeholder="Full Name" type="text" value=""> 
<span class="field-validation-error" data-valmsg-for="FullName" data-valmsg-replace="true"> 
<span for="FullName" generated="true" class="">Please enter your Full name</span> 
</span> 
</div> 

任何人有任何的想法,也可以在提示這是怎麼回事?

+0

似乎還有一些更新安裝在本地,是不是在服務器... –

+0

Pranav辛格 - 你猜這地方是更多最新的,它可以是本地或服務器?或者你確定本地是從我提供的代碼更新?非常感謝。 – Quarty

+0

我認爲版本的jQueryValidate是問題,請參閱http://stackoverflow.com/questions/6769823/what-is-the-generated-attribute-seen-in-some-html-tag-used-for –

回答

0

我打算推測你使用的Live服務器與本地主機相比有些不同。問題可能在於活動服務器具有您正在使用的不同語言版本,或者不包含您認爲應該使用的某些軟件包。

一個例子是使用FastCGI的應用程序,很多服務器都有它,但並不是所有的層都有。因此,您需要檢查以確保它在設置中處於啓用狀態,或者需要的版本位於您使用的任何主機上。

+0

這當然是我現在看到的......儘管文件之間的差異必須在應用程序之外,因爲這些文件是相同的。將網站上傳到第三臺計算機上,具有與服務器相同的行爲。所有運行.net 4.5.2的3臺計算機都運行相同的應用程序池版本。阿格:)謝謝你的回答。 – Quarty

+0

你使用的是像laravel還是其他的框架?你使用的是什麼本地主機?(Apache可能?) – jumper

+0

Pranav Singh指出我正確的方向。原來我的Publish正在創建與我的本地版本不同的腳本包...我是個白癡。謝謝你的幫助 :) – Quarty

相關問題