javascript - 如何将单选按钮逻辑放入 *ngFor 中?

标签 javascript html angular typescript

现在,当我选择一个选项时,我在表单中填充了单选按钮的选项,但我没有看到 isChecked true ,我是否缺少使用 Angular 的下面的任何内容?

app.component.html

<div class="form-group">
 <label>answerOption</label>
    <div *ngFor="let option of singleQuestion.answerOption">
        <label>
           <input type="radio" name="option.isChecked" 
              [value]="true" (change) ="handleChange(option.isChecked)">
                 {{option.answerText}}
        </label>
   </div>

最佳答案

首先,您需要对单选按钮进行分组,这是通过为单选按钮提供相同的名称来完成的。

示例:-

<input type="radio" name="gender" value="male"> Male<br>
<input type="radio" name="gender" value="female"> Female<br>
<input type="radio" name="gender" value="other"> Other

因此,当用户一次只能检查一个选项时。

对于你的例子,我给出的名字有问题。

我们需要了解用户选择了哪个选项,因此您需要绑定(bind)一个唯一的值,在上面给出的性别示例中,我为每个 radio 控制值添加了不同的值。

 [value]="option.answerOptionId"

这里,[value] 是从代码到 View 的一种绑定(bind)方式,因此 ischecked 它没有设置为 true。 下面给出更好的方法。

       <div class="form-group">
          <label>answerOption</label>
            <div *ngFor="let option of singleQuestion">
                <label>
                <input type="radio" name="question" 
         [value]="option.answerOptionId" (change) ="handleChange(option)">
                {{option.answerText}}
                </label>
            </div>
        </div>

我可以从您的选项中选择的最好的东西是 option.answerOptionId,请引用我上面的 html 片段。 发送当前的单选按钮 option.isChecked 是不正确的,因为我们总是会得到 false。您为 ts 文件中的两个答案选项提供值 false 的原因。对于这次事件,我已经发送了整个 radio 控制。 ts 文件中的 Log 方法将显示用户当前选择的选项。

总结一下。

  • 单选按钮的名称相同。
  • 为每个 radio 提供不同的值 按钮。
  • 在事件中发送控件或控件值, 以有利者为准。

关于javascript - 如何将单选按钮逻辑放入 *ngFor 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59845574/

相关文章:

javascript - Angular - 展平相同类型对象的数组

javascript - 不要从 js 对象发送数据

php - 使用 php 和 mysql 从多个数组表单输入插入数据

angular - Angular 4 中的长轮询

html - 如何在不使用 CDN 的情况下包含 font awesome 4.1 的本地文件?

javascript - 简单的图像 slider 不起作用(jQuery)

angular - 用于确定 FormArray 的控件属性是 [FormControl] 还是 [FormGroup] 的选择器?

javascript - Kotlin 和 Firebase 云函数 update() 方法

javascript - 在 initComponent Ext JS4 中声明函数

javascript - 如何解决 Firefox 上 CSS2Properties 没有索引属性 setter '0' 错误?