Как показать popover, если пользователь только начинает печатать в поле ввода? - PullRequest
0 голосов
/ 18 сентября 2018

У меня есть поле ввода, я хочу показывать всплывающее окно только тогда, когда пользователь вводит данные в поле, и я не хочу показывать всплывающее окно в первый раз, когда поле ввода пусто.Я написал следующий код, но он показывает всплывающее окно в первый раз, когда я нажимаю на него!Есть ли способ это исправить?Вот PLNKR, чтобы показать проблему:

http://plnkr.co/edit/d6WzzJYgDHlBmx1Pfb9L?p=preview

<input type="text"
    value="Click me!" 
    ng-model="value"
    popover-is-open="!!value"  
    uib-popover="This must be shown when use has typed value"  
    popover-trigger="focus"
    class="form-control">

Ответы [ 3 ]

0 голосов
/ 18 сентября 2018

Я нашел способ получить желаемый результат, вот как:

<input type="text"
    value="Click me!" 
    ng-model="value"
    popover-is-open="!!value && popUpOpen"  
    uib-popover="This must be shown when use has typed value"  
    popover-trigger="none"
    ng-blur="popUpOpen = false"
    ng-focus="popUpOpen = true"
    class="form-control">
0 голосов
/ 18 сентября 2018

Я знаю, что вы нашли решение, оно использует uib aswell и использует триггер 'mouseclick'

<input vm.detectChange popover-append-to-body="true"  popover-placement="right" uib-popover-template="'popup.html'" popover-is-open="isOpen" popover-trigger="mouseclick" popover-title="Popup: ">
0 голосов
/ 18 сентября 2018

Попробуйте этот код, пожалуйста, я изменил нажмите, чтобы изменить.

<div ng-controller="PopoverDemoCtrl">
  <br />
  <br />
  <br />
    <input type="text"
    value="Click me!" 
    ng-model="value"
    popover-is-open="!!value"  
    uib-popover="This must be shown when use has typed value"  
    popover-trigger="change"
    class="form-control">

    <br />
    {{value}} -- {{!!value}}
</div>

Скажи мне,

спасибо!

...