2017-05-03 10 views
0

私はこれをしばらく理解しようとしています。フォームが生成されると、私は剣道バリデータのメッセージスパン要素を入力の下に置く方法は検証されていますか?

@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> 
    } 

: 私が見た全ての実施例は、html私は動的フォームとそのdatepicker要素を生成し、次のコードを持って手動

挿入inputspan要素を使用しますページ上のコード以下:

enter image description here

これは検証です:

<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に正しいメッセージが表示されます。しかし、このスパンセクションは、ページのレイアウトを変更します。私は修正することができますどのようにenter image description here

を、その私のerror spanは私のフォーム、それはここのようないくつかの例に示されている方法の下に配置されるように:http://dojo.telerik.com/ikUfuenter image description here

答えて

0

私はまったく同じ問題を抱えています。問題は、検証メッセージのspan要素がDatePickersの間違った場所にあることが原因と考えられます。他のすべてのウィジェットでは、それはスパムの要素内1つの高いレベルだ、

しかし:それは、この要素の内部にある

だから、現時点ではTelerikのバグであると思われます。それは他のウィジェットでは機能しますが、DatePickerでは機能しません。私はこのバグがすでに報告されているかどうかを確認して見つけ、そうでない場合は報告します。あなたが必然的に緊急に修正が必要な場合は、スパン要素を移動するためにjqueryの魔法を試すことができます。

関連する問題