0
我試圖弄清楚這一點。 所有我看到的例子中,使用手動插入如何將kendo驗證器消息span元素置於被驗證的輸入下方?
的html
與input
和span
元件我有以下代碼產生形式和其datepicker
元素動態:
@using (Html.BeginForm("Reload", "FileDate", FormMethod.Post, new { returnUrl = this.Request.RawUrl, id = "DateForm", onsubmit = "return ValidateDate();" }))
{
@(Html.Kendo().DatePicker()
.Name("Date")
.Value(Session["FileDate"] == null ? DateTime.Now : Convert.ToDateTime(Session["FileDate"].ToString()))
.Events(e => e
.Change("datepicker_change")
)
)
@Html.Hidden("returnUrl", this.Request.RawUrl)
<script>
function datepicker_change() {
if(ValidateDate()){
$("#DateForm").submit();
}
}
</script>
}
當產生形式,我有在網頁下面的代碼:
這是一個驗證:
<script>
$(document).ready(function() {
$("#mainMenu").kendoMenu();
$("#Date").attr('required', 'required');
$("#Date").attr('data-WrongFormat-msg', 'Date Format is Wrong');
var validator = $("#container").kendoValidator({
rules: {
WrongFormat: function (input) {
if (input.is("[data-role=datepicker]")) {
var dateBox = input.data("kendoDatePicker");
return input.data("kendoDatePicker").value();
} else {
return true;
}
}
}
})
});
function ValidateDate()
{
var validator = $("#container").data("kendoValidator");
if (validator.validate()) {
return true;
}
else
{
return false;
}
}
</script>
當我提供了不正確的輸入或沒有輸入可言,我得到的span
正確的消息。然而,這種跨部修改了頁面的佈局:
我怎樣才能解決這個問題,所以我error span
放在我的形式,它是像這裏的一些例子中的顯示方式下:http://dojo.telerik.com/ikUfu: