angular - 简单表单 POST 的 Material mat-radio-button name 属性

标签 angular angular-material radio-button radio-group

我正在研究一些简单的形式,将其从 bootstrap 转换为 Material。

尽管我使用的是 Angular 6,但表单在提交时以旧样式发布(没有使用任何 Angular 表单)

<form method="post" action="http://api.example.com/submit" id="user_form">

   <mat-form-field>
      <input matInput placeholder="name" name="username">
   </mat-form-field>


   <mat-radio-group required>
      <mat-radio-button name="company" value="company1">company 1</mat-radio-button>
      <mat-radio-button name="company" value="company2">company 2</mat-radio-button>
   </mat-radio-group>

   <button type="submit">submit</button>

</form>

为简单起见,我想保持这种方式,并且我不想使用任何 javascript 来提交此表单(没有模板驱动的表单或响应式(Reactive)表单)。

输入在向输入添加名称属性时效果很好,当我发布表单(单击提交按钮)时,它按预期发送到服务器。

至于 mat-radio,此数据不会在发布数据中发送到服务器。我猜前者是 native 输入,其中 mat-radio-button 是一个组件。

有没有办法让它工作? (同样,不在 TS 端处理表单 POST)

最佳答案

尝试这样的事情

在 html 中

<mat-radio-group formControlName="gender">
      <mat-label>Gender:</mat-label>&nbsp;
      <mat-radio-button color="primary" value="male">Male</mat-radio-button
      >&nbsp;
      <mat-radio-button color="primary" value="female">Female</mat-radio-button>
    </mat-radio-group>

在 ts 中

this.signupForm = new FormGroup({
      gender: new FormControl("", Validators.required),

    });

关于angular - 简单表单 POST 的 Material mat-radio-button name 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53975321/

相关文章:

css - 如何根据 "Checked"值设置 radio 输入的样式

Angular Material : error "No provider for MatChip"

Android:如何使 RadioGroup 在 ListView 中正常工作?

angular - 与 Select/Options 和 ngModel/ngModelChange 一起使用的异步管道

html - using/deep/in angular 4 component.css 导致其他组件使用相同的样式。如何解决?

css - md-select 悬停打开选择选项

css - 通过有 Angular Material 的不同高度的 md 卡的响应网格

ASP.NET 中继器内的 HTML 单选按钮 C#

angular - 文本溢出 : ellipsis in mat-expansion-panel header

javascript - 解决错误错误 : "[object Object]" in angular