我有一个显示员工信息的表。我想添加一个搜索来显示我在最小文本框和最大文本框中输入的特定数字之间的所有员工。这是我的表代码。
constructor() {
super();
this.state = {
employees: []
};
}
componentDidMount() {
this.employeesTracker = Tracker.autorun(() => {
const employees = Employees.find().fetch();
this.setState({ employees });
});
}
renderEmployeesListItems() {
return this.state.employees.map(employee => {
return (
<tr key={employee._id}>
<td>{employee.name}</td>
<td>{employee.email}</td>
<td>{employee.age}</td>
<td>{employee.gender}</td>
<td>{employee.city}</td>
</tr>
);
});
}
这里是我渲染应用程序的地方:
render() {
return (
<div>
<input type="text" id="min" name="min"/>
<input type="text" id="max" name="max"/>
<button onClick={this.ageFilter.bind(this)}>filter</button>
<table id="myTable">
<tbody>
{this.renderEmployeesListItems()}
</tbody>
</table>
</div>
);
}
最佳答案
您需要使用&&
(AND)运算符,而不是||
(OR)
...
var age = parseInt(td.innerHTML)
if (age > filterMin && age < filterMax) {
...
} else {
...
}
另外,您为什么要通过 document.
访问数据。这不是在 React 中进行文档更新的方法。
关于javascript - 如何在表中搜索两个年龄之间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57602067/