【发布时间】:2017-04-24 04:48:15
【问题描述】:
我正在使用 Angular 1.5(使用 Bootstrap)处理表单,我想要以下功能:
当用户单击单选按钮时,我希望它专注于单选组中的输入文本元素,反之亦然(即用户单击输入文本元素并选中单选按钮)。
我在想我需要使用 ng-click 或 ng-change 并编写一个函数。但我被难住了。
代码如下:
<div class="radio-group">
<input type="radio"
name="phone"
ng-model="contactMethod"
value="phone"/>
<label for="phoneNumber" class="radio-inline">Phone</label>
<input type="text"
id="phoneNumber"
name="phoneNumberInput"
ui-mask="(999) 999-9999"
ng-model="phoneNum"
class="form-control"/>
</div>
编辑:我收到了一个非常有用的答案,非常适合这种特定情况(见下文)。但我也想知道是否有办法概括解决方案,使其适用于多个单选按钮组。
【问题讨论】:
-
所以你不希望它实际上同时关注两个方向。如果用户单击单选按钮,您希望光标(焦点)在输入文本字段上。如果用户单击文本字段,您希望选择单选按钮。但是您不希望它专注于单选按钮(这会很烦人,光标会离开文本字段)。我会尝试一个快速的示例,看看我是否可以让它工作。虽然这应该只是直接的 html/js,但不会打扰 Angular。基本的点击事件和焦点设置应该可以解决问题。
-
没错。我对 Angular 比较陌生,所以我不知道是否有特定的“Angular”方法可以使用 $watch 之类的方法来实现。
标签: angularjs forms twitter-bootstrap