こんにちは私はフォームに入力するときに送信ボタンを無効にし、入力ボックスにテキストがあるときのみ有効にする場合があります。クリアテキスト入力と無効化ボタンonclick Angularjs
<div id="app-id-input-container" ng-form="appIdInput">
<div class="input-group">
<input id="app-id-input" name="appIdInput" ng-click="clearAppIdInput()" class="form-control" type="text" ng-model="appId" pattern="^[AaIi][PpXxNn][0-9]{6}$" maxlength="8" />
<span class="input-group-btn">
<button id="addAppId" class="btn btn-success" ng-click="preferences.appIdInput.$valid && addAppId()" type="button"> <span class="glyphicon glyphicon-plus"></span></button>
</span>
</div>
<span class="validation-alert" ng-show="appIdError">{{appIdError}}</span>
</div>
ユーザーが入力ボックス内をクリックすると、フィールドがクリアされます。
$scope.clearAppIdInput = function() {
$scope.appId = "";
};
有効範囲は空ですが、ボタンは無効になっていません。
これはボタンを無効にする方法です。
$(document).ready(function(){
$('#addAppId').prop('disabled',true);
$('#app-id-input').keyup(function(){
$('#addAppId').prop('disabled', this.value == "" ? true : false);
});
});
今、キーボードの「バックスペース」をクリックしてボタンを再度無効にすることはできますか?
クリックを使用して入力フィールドをクリアすると、ボタンを再び無効にするにはどうすればよいですか? $scope.appId
が空または未定義の場合、ボタンは無効になりますけれども
<button ng-disabled="!appId" id="addAppId" class="btn btn-success"
ng-click="preferences.appIdInput.$valid && addAppId()"
type="button"> <span class="glyphicon glyphicon-plus"></span>
</button>
:
はあなたのplsはplunker例とあなたの答えを説明することができます。前もって感謝します :-) –