小编Pek*_*kka的帖子

ReactJS:如何在单选按钮中使用布尔值?

在单选按钮中使用布尔数据的正确方法是什么.如果直接使用,这些值将从布尔值转换为字符串.

预加载的输入字段的JSON数据:

var question = [
  {value: true, name: "Yes"},
  {value: false, name: "Not this time"}
]
Run Code Online (Sandbox Code Playgroud)

单选按钮字段:

<input type="radio" 
       name="question" 
       onChange={this.state.onRadioChange} 
       value={this.state.question[0].value} /> {this.state.question[0].name}
<input type="radio" 
       name="question" 
       onChange={this.state.onRadioChange} 
       value={this.state.question[1].value} /> {this.state.question[1].name}
Run Code Online (Sandbox Code Playgroud)

onRadioChange的绑定:

onRadioChange: function(e) {
    console.log(e.target.value);
}
Run Code Online (Sandbox Code Playgroud)

控制台日志显示所选值从布尔值转换为字符串.

处理这个问题的一种方法是在onRadioChange函数中添加一个额外的函数,将"true"/"false"字符串转换为布尔值,e.target.value但感觉有点麻烦.另外,仅使用'e.target.checked'将不起作用,因为在某些单选按钮组中,我有其他值而不是布尔值(需要通过).

一些通用且干净的解决方案是使用从REST转换为REST的常量值表.

是否有任何特殊的ReactJS方法可以做到这一点?也许不吧.

javascript radio-button reactjs

10
推荐指数
2
解决办法
8743
查看次数

如何在 Angular 中检查表单字段是否被触摸且为空

如果表单字段被触摸并留空,我想警告用户。我可以检查空白字段是否被 触摸$pristine。但如果我从 预加载表单数据$scope,则$pristine不起作用。另外,我不想使用required参数,我只想注入警告样式ng-class

<div ng-class="{'has-warning': !form.name.$pristine}">
  <input type="text" name="name" ng-model="people.name">
</div>
Run Code Online (Sandbox Code Playgroud)

javascript angularjs

7
推荐指数
2
解决办法
3万
查看次数

标签 统计

javascript ×2

angularjs ×1

radio-button ×1

reactjs ×1