2016-05-09 16 views
0

次のコードのサンプルでは、​​私は入力を作成しています。会議は終わった。角時間の妥当性確認

  <input ui-timepicker 
            name="EventTimePickerTo" 
            id="EventTimePickerTo" 
            class="form-control" 
            autocomplete="off" 
            attachlevel="-1" 
            placeholder="@WebResources.PlaceholderEndTime" 
            ng-model="EventDetails.DateTimeTo" 
            time-pattern="@ValidatorRegex.ValidTimeOrEmpty" 
            ng-disabled="EventDetails.Permissions.TimePickerDisabled" 
            ng-change="SaveEventDetails()" 
            ng-blur="SaveEventDetails()" /> 

私が欲しいのは、入力が14:00までの最大時間を持ち、時間が14:00を超える場合にエラーメッセージを表示することです。 Unfortunatelly ng-maxが動作しません。 何か助けてください!

+0

あなたの変更機能でこの検証を行い、そこに時間をチェックしてください – amrdruid

+0

あなた自身のバリデータを作成してください:http://angularjs.io/how-to-create- a-custom-input-validator-with-angularjs /と入力します。 – Walfrat

答えて

0

属性はminmaxですが、日付は文字列として設定してください。例

<input class="col-xs-12 -th-txt" type="date" name="date_field_{{field.Id}}" 
         ng-if="field.ValidationMinValue && field.ValidationMaxValue" 
         ng-required="field.Required" 
         min="{{field.ValidationMinValue}}" 
         max="{{field.ValidationMaxValue}}" 
         ng-model="field.model" /> 
+0

最大値を 'max =" '14:00:00' "'または 'max =" 14:00:00 "'として処理しようとしました: '

  • 無効です!
  • 'しかし、これは動作していません – George

    0

    ため NG-MAX(またはmax)がUI-timepickerと協力していないいくつかの理由。だから、私は出回っ既存の機能にチェックを置く:私が直面した

    var hoursfromdate = ed.DateTimeTo.getHours(); 
             if (hoursfromdate > "14") { 
              console.log("not a valid time!"); 
             } else 
              console.log("valid time!"); 
    

    問題は、時間の経過とともに日時変数を比較することはできないということです!だから私は時間情報を抽出しなければなりませんでした。