![](/img/trans.png)
[英]Replacing GridView using jQuery table in asp.net web application?
[英]Replacing jQuery in ASP.NET MVC 3 application
目前它只是一個智力練習,因為我沒有時間投入這個,但我感興趣,如果有人有任何經驗完全取代jQuery與另一個JavaScript框架,如Dojo Toolkit或谷歌閉包 。
實際上有多少jQuery被用於MVC框架,或者它是以不引人注目的方式實現的,所以至少在理論上,它都可以被替換......
替換整個javascript框架會涉及什么?
jQuery中沒有任何內容,它完全是關於開發人員,如果你想使用它,它將使用jQuery,如果你想使用ASP.NET Ajax庫,它將使用它,如果你想使用其他任何東西..相同的答案。
當你有一個帶有一些驗證的Model
時,.NET Framework唯一要做的就是將data-
屬性添加到輸入表單中,從中你可以詳細說明你自己的版本來進行客戶端驗證。
例如:
[Required]
[ValidatePasswordLength]
[DataType(DataType.Password)]
[Display(Name = "Password")]
public string Password { get; set; }
[DataType(DataType.Password)]
[Display(Name = "Confirm password")]
[Compare("Password", ErrorMessage = "The password and confirmation password do not match.")]
public string ConfirmPassword { get; set; }
然后
<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.LabelFor(m => m.ConfirmPassword)
</div>
<div class="editor-field">
@Html.PasswordFor(m => m.ConfirmPassword)
@Html.ValidationMessageFor(m => m.ConfirmPassword)
</div>
將翻譯成
<div class="editor-label">
<label for="Password">Password</label>
</div>
<div class="editor-field">
<input data-val="true" data-val-length="&#39;Password&#39; must be at least 6 characters long." data-val-length-min="6" data-val-required="The Password field is required." id="Password" name="Password" type="password">
<span class="field-validation-valid" data-valmsg-for="Password" data-valmsg-replace="true"></span>
</div>
<div class="editor-label">
<label for="ConfirmPassword">Confirm password</label>
</div>
<div class="editor-field">
<input data-val="true" data-val-equalto="The password and confirmation password do not match." data-val-equalto-other="*.Password" id="ConfirmPassword" name="ConfirmPassword" type="password">
<span class="field-validation-valid" data-valmsg-for="ConfirmPassword" data-valmsg-replace="true"></span>
</div>
從這里,您可以創建自己的客戶端驗證 。 上面的代碼取自默認項目,它沒有jQuery集成......
如果你想要jQuery集成 ,那么你需要做的就是追加這兩個文件:
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
當然,jQuery Library也是如此,你可以看到,你在所有.NET Framework中都有一個告訴Framework要做什么,而不是相反的方式;)
asp.net mvc-3中的客戶端驗證基於html-5屬性,如果您不在頁面上包含jquery validate和ouobtrusive腳本,它將僅回退到服務器端驗證。 這是不引人注目的第一個證據。 所以,我相信,理論上你可以在你想要的任何js庫中推出自己的驗證框架。 您自己的驗證框架也必須使用這些html屬性進行驗證。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.