アプリケーションのポップアップに日付ピッカーを追加しましたが、正常に機能しますが、フォームを送信しようとすると、エントリを保存できません。入力テキストに有効な日付があるにもかかわらず、フォーム検証ツールがfalseを返します。日付を変更すると、フォームバリデーターはtrueを返します。これが私のコードです
<p class="input-group">
<input type="text" ng-click="open($event)" class="form-control registration-input"
datepicker-popup="{{format}}" show-button-bar="false"
ng-model="CompanyData.dateOfRegistration" name="dateOfRegistration"
is-open="opened" datepicker-options="dateOptions" /> <span
class="input-group-btn">
<button type="button" class="btn btn-default"
ng-click="open($event)">
<i class="glyphicon glyphicon-calendar"></i>
</button>
</span>
</p>
以下はjsコードです
// Disable weekend selection
$scope.disabled = function(date, mode) {
return ( mode === 'day' && ( date.getDay() === 0 || date.getDay() === 6 ) );
};
$scope.dates = [{date:'01-05-2001'}, {date:'05-05-2014'}, {date:'10-11-2008'}]
$scope.open = function($event) {
$event.preventDefault();
$event.stopPropagation();
$scope.opened = true;
};
$scope.dateOptions = {
formatYear: 'yy',
startingDay: 1,
showWeeks:'false'
};
$scope.format = 'dd-MMMM-yyyy'
誰かが私がこの仕事をするために何をすべきか教えてもらえますか?
入力テキストに有効な日付があるのに、フォーム検証ツールがfalseを返しますか?
これCompanyData.dateOfRegistration
は、ngModelが最初に設定されておらず、undefined
これがfalseであるためです。
日付ピッカーには有効な日付がありますが、ngModel
初期化されていないため、return false;
CompanyData.dateOfRegistration
を有効な日付に設定します。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加