Обновите Ng-Pattern с помощью Jquery

Может кто-нибудь помочь мне, как обновить Ng-Pattern с помощью Jquery

Я рассмотрел вопрос ниже, но мне это не помогло (большинство вопросов связаны с обновлением динамических значений с использованием Angular JS)

  1. Вопрос 1
  2. Вопрос 2
  3. Вопрос 3

HTML

<div class="col-md-1" style="width: 50px;" id="hourmain">
    <span ng-show="addItem.Hour.$error.pattern">The number must be between 0-4</span>
    <input class="form-control" type="text" name="Hour" ng-model="form.Hour" placeholder="Hour" required="required" ng-pattern="/^[0-4]+(\.[5]{1})?$/" step="0.5" min="0" max="3" maxlength="3" id="hour">
</div>

Теперь, используя Jquery, как я могу обновить значение ng-pattern до ng-pattern="/^[0-9]+(\.[5]{1})?$/"


person Ron    schedule 24.11.2017    source источник


Ответы (1)


В jQuery вы можете получить определенный элемент, используя:

var input = $('input[name="Hour"]');

а затем установите значение атрибута ng-pattern, используя:

input.attr('ng-pattern', '/^[0-9]+(\.[5]{1})?$/');

Рабочий пример:

$(document).ready(function(){

var input = $('input[name="Hour"]');
input.attr('ng-pattern', '/^[0-9]+(\.[5]{1})?$/');

console.log('input ng-pattern is now: ' + input.attr('ng-pattern'));

});
<div class="col-md-1" style="width: 50px;" id="hourmain">
<span ng-show="addItem.Hour.$error.pattern">The number must be between 0-4</span>
<input class="form-control" type="text" name="Hour" ng-model="form.Hour" placeholder="Hour" required="required" ng-pattern="/^[0-4]+(\.[5]{1})?$/" step="0.5" min="0" max="3" maxlength="3" id="hour" />
</div>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>


Кроме того, в ванильном javascript вы можете получить определенный элемент, используя:

var input = document.querySelector('input[name="Hour"]');

а затем установите значение атрибута ng-pattern, используя:

input.setAttribute('ng-pattern', '/^[0-9]+(\.[5]{1})?$/');

Рабочий пример:

var input = document.querySelector('input[name="Hour"]');
input.setAttribute('ng-pattern', '/^[0-9]+(\.[5]{1})?$/');

console.log('input ng-pattern is now: ' + input.getAttribute('ng-pattern'));
<div class="col-md-1" style="width: 50px;" id="hourmain">
<span ng-show="addItem.Hour.$error.pattern">The number must be between 0-4</span>
<input class="form-control" type="text" name="Hour" ng-model="form.Hour" placeholder="Hour" required="required" ng-pattern="/^[0-4]+(\.[5]{1})?$/" step="0.5" min="0" max="3" maxlength="3" id="hour" />
</div>

person Rounin    schedule 24.11.2017