- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
假设我有以下由实现 material-ui
组件的 React.Component
呈现的内容:
{data.map(value => (
<ListItem
key={data.indexOf(value)}
primaryText={value}
leftCheckbox={
<Checkbox
onCheck={this.props.handleAddOption}>
</Checkbox>}>
</ListItem>
当选择复选框
时,我想将值插入状态
的数组
handleAddOption = (value) => {
this.setState((....))
}
我该如何去做呢?
更新在这里找到了解决方案Passing a function with parameters through props on reactjs
最佳答案
您需要将值从 CheckBox
组件传递到函数 prop。您可以通过以下方式执行此操作:
<ListItem
key={data.indexOf(value)}
primaryText={value}
leftCheckbox={
<Checkbox
onCheck={(e, isChecked) => this.props.handleAddOption(value, isChecked)}>
</Checkbox>}>
</ListItem>
对于你的处理程序:
handleAddOption(value, isChecked) {
this.setState((prevState, props) => {
// Get the old state's value, sticking with immutable pattern
let yourProperty = prevState.yourProperty;
// Determine if the value already exists in your property's array
const exists = yourProperty.find(v => v === value);
if (isChecked) {
// If the checkbox is checked...
// If the property exists, don't do anything
// If it isn't there, add it
!exists && yourProperty.push(value);
} else {
// If the checkbox is NOT checked...
// If the property exists, filter the array to remove it
// If it isn't there, do nothing
exists && (yourProperty = yourProperty.filter(v => v !== value));
}
// Return the new state
return { yourProperty };
});
}
更新我用文档和几个拼写错误更新了解决方案,并在此处的 CodeSandBox 上创建了一个工作示例:https://codesandbox.io/s/pj0m4w3qp7
关于javascript - 从 Checkbox/ListItem 获取 onCheck 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49416800/
我为我的主视图创建了一个模板文件 home.html,其中有一个复选框: 这里的 View : var HomeView = Backbone.View.extend({ initializ
请先看下面的代码。我希望特定的复选框(ID为cfc1)在点击时不会显示为勾选状态。我在那里使用了 onCheck 函数。我没有找到任何方法可以在单击特定元素时显示未选中的元素。我正在尝试使用代码 -
我一直在研究如何在使用 JavaScript 检查相应的复选框时启用文本框数组... 这是我的代码: $line_util3 = "Select id_code,description fro
我有一个来自 Material-ui 的复选框,它不会触发 onCheck 事件。 function onCheck() { currentDocument.ispublic = !curren
我试图使用 jQuery 开发一个复选框。其中 oncheck 总计将被更新,但当我取消选中时,它将恢复原样。此处总计已使用 oncheck 更新,但当我取消选中时,它不会返回到总计金额。取消选中它。
我有一个包含单选按钮的自定义对话框,但是当我添加一个 oncheckedchangelistener 时,我的应用程序崩溃了。可能是什么问题? 提前致谢! :D 这是我的代码: GridViewAda
我的表单底部有这样的代码。 I agree to keep my Username and Password confidential and uphold the integrity
我整晚都在绞尽脑汁,但似乎无法完成这件小事。我想将 SwitchPreference 添加到我的应用程序的 PreferenceActivity 中。下面是一张图片。 在我说太多之前,我的问题就是这样
使用material-ui 0.15.3和react 15.3.0。 我有一个 Checkbox 组件,想要在其 onCheck 函数中使用 this.setState。 很快我就发现我必须手动将一些
请问我们如何将值传递给 iCheck(版本 1.x)的 onChecked 事件处理程序? 在我的场景中,每个单选按钮都有特定的值,我需要将这些值传递给 checked 事件处理程序 如何让 iChe
我不知道正确的术语,但我想要与 onclick 相同的效果,但使用 jquery 或 javascript 的复选框。 点击版本: Link 我想要与上面相同的效果,但要有一个复选框。最终结果将是页面
我想获取 div 的源代码,例如,如果 div 包含一些标签,我想获取它们,因为它们是 html 格式,并在文本字段上更新它。 JsFiddle:https://jsfiddle.net/Lindow
假设我有以下由实现 material-ui 组件的 React.Component 呈现的内容: {data.map(value => ( }> 当选择
我在 ListView 的每一行中创建了一个包含 radio 组的应用程序。问题是,当我滚动 ListView 时, radio 组的选择会随着 radio 组的 oncheckedevent 多次触
在选中或取消选中 vst 中的复选框时,我想在某些情况下要求确认。(取消)检查工作正常,直到我从 OnChecking 事件处理程序打开 MessageBox 为止。 当我显示 MessageBox
我正在从 service worker 提供的数据源中填充 Treeview : postCreate: function () { var self = this; self._lo
如何检测单选/复选框按钮被用javascript选中的时刻? 例如: document.getElementById("myRadioButton").checked = true 有没有一种方法可以
我是一名优秀的程序员,十分优秀!