【问题标题】:Show Bootstrap tooltip on focus when an angular input has an error当角度输入有错误时,在焦点上显示 Bootstrap 工具提示
【发布时间】:2013-08-07 15:51:34
【问题描述】:

本例取自angularjs's docs

<form name="myForm" ng-controller="Ctrl">
  userType: <input name="input" ng-model="userType" required>
  <span class="error" ng-show="myForm.input.$error.required">Required!</span>
</form>

我想实现相同的行为,但使用 Bootstrap 工具提示。我查看了 Angular UI-Bootstraped 项目 (http://angular-ui.github.io/bootstrap/),但不知道该怎么做。

类似:

<input type="text" value="Click me!"
    tooltip="See? Now click away..." 
    tooltip-trigger="focus"
    tooltip-placement="right"
    tooltip-enabled="myForm.input.$error.required"   <--- pseudo code
    />

【问题讨论】:

标签: twitter-bootstrap angularjs angular-ui-bootstrap


【解决方案1】:

我尝试了几种方法,看来您只能从 angular-bootstrap 修改源代码以获得正确的解决方案。但。有一个“hacky”解决方案,也许它会对你有所帮助,甚至这就是你所需要的(来自 angular-bootstrap 和 angular-input 的示例):

<form name="myForm" class="my-form">
  userType: <input style="width: 50px;" name="input" ng-model="userType" required value="Click me!" tooltip="{{myForm.$valid ? '' : 'See? Now click away...'}}"  tooltip-trigger="focus" tooltip-placement="right" class="form-control">
  <span class="error" ng-show="myForm.input.$error.required">Required!</span><br>
  <tt>userType = {{userType}}</tt><br>
  <tt>myForm.input.$valid = {{myForm.input.$valid}}</tt><br>
  <tt>myForm.input.$error = {{myForm.input.$error}}</tt><br>
  <tt>myForm.$valid = {{myForm.$valid}}</tt><br>
  <tt>myForm.$error.required = {{!!myForm.$error.required}}</tt><br>
 </form>

same in plunker.

基本上在这里,您只需从工具提示中删除文本并将其隐藏。

【讨论】:

  • 正确答案。这是非常聪明的。几乎没有 hack :-) 谢谢!
猜你喜欢
  • 1970-01-01
  • 2010-09-13
  • 1970-01-01
  • 2017-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多