1
How do I not allow repeated numbers to be entered in the validation? In my current validation, I can make it mandatory to fill in the fields to enable the save button and in this input taskSelected.ordemTarefa, I only allow validating the button by typing numbers, but it is possible to add this condition of not allowing repeat numbers in this list in validation?
//validação
$scope.exibeValidacaoTarefa = function() {
for (var tarefa in $scope.tarefasSelecionadas) {
if ($scope.tarefasSelecionadas[tarefa].ordemTarefa == null ||
$scope.tarefasSelecionadas[tarefa].ordemTarefa == "") {
return true;
}
}
return $scope.atividadeInput == null ||
$scope.atividadeInput == "" ||
$scope.atividadeInput.descAtividade == null ||
$scope.atividadeInput.descAtividade == "" ||
$scope.atividadeInput.solicitante == null ||
$scope.atividadeInput.solicitante == "" ||
$scope.tarefasSelecionadas == null;
}
$scope.exibeValidacaoEditarTarefa = function() {
for (var tarefa in $scope.tarefasSelecionadas) {
if ($scope.tarefasSelecionadas[tarefa].ordemTarefa == null ||
$scope.tarefasSelecionadas[tarefa].ordemTarefa == "") {
return true;
}
}
//submit
$scope.adicionarAtividade = function(atividadeInput) {
var codigo = "";
atividadesInput.codigoAtividade = codigo;
atividadesInput.descAtividade = $scope.atividadeInput.descAtividade;
atividadesInput.solicitante = $scope.atividadeInput.solicitante;
atividadesInput.matrizJson = [];
for (var int = 0; int < $scope.tarefasSelecionadas.length; int++) {
var gride = {};
gride.codTarefa = $scope.tarefasSelecionadas[int].codigo;
gride.ordemTarefa = $scope.tarefasSelecionadas[int].ordemTarefa;
atividadesInput.matrizJson.push(gride)
}
atividadesAPI.saveAtividade(atividadesInput).success(function(data) {
$(document).ready(function() {
$("#ModalAdicionaAtividadeSucesso").modal('show');
});
$scope.atividadeInput = {};
$scope.tarefasSelecionadas = {};
carregarTarefas();
carregarAtividades();
}).error(function(data, status) {
$(document).ready(function() {
$("#ModalAdicionaAtividadeErro").modal('show');
});
$scope.message = "Aconteceu um problema: " + data;
});
};
<tr ng-repeat="tarefaSelecionada in tarefasSelecionadas">
<td scope="row">
<input type="number" class="form-control" name="numbers" ng-model="tarefaSelecionada.ordemTarefa" ng-required="true">
</td>
</tr>
<button type="button" class="btn btn-primary btn-md" ng-click="adicionarAtividade(atividadeInput)" data-dismiss="modal" id="btn-cadastra-atividade" onclick="atualiza()" ng-disabled="exibeValidacaoTarefa()">
<span class="glyphicon glyphicon-ok-sign"></span> Salvar
</button>
I think I was not very clear, the check is not to be able to repeat in the same input, it is to have an input list and in them it is not possible to type the same number, because this list is a sort list, cannot repeat, for example I cannot type the number 3 in an input and the other type again the 3
– Isa
@Is this what you need? Adapt to your needs.
– NoobSaibot