pro*_*_98 5 search android listview react-native
我的目标是用 JSON 数据创建一个搜索 ListView。这是有效的,但我的搜索功能有一个小问题。当我输入一个单词时,它必须与 ListView 的 Array 中的单词完全相同。主要问题是我必须输入正确的单词。例如:当单词stackoverflow是Array 的一项时,我必须输入stackoverflow才能找到此项。但是,例如,当我输入stack或flow或stacko时,我也想获得该项目。
这是我的代码:
filterDatasource(event)
{
var searchString = event.nativeEvent.text.toLowerCase();
if (searchString != "")
{
var content = this.state.loadedContent;
var searchResultsArray = [];
for (var i = 0; i < content.length; i++) {
var detailArray = content[i];
const gattung = detailArray.Gattung;
const zugnummer = detailArray.Zugummer;
const ab = detailArray.ab;
const bis = detailArray.bis;
const wochentag = detailArray.Wochentag;
const zeitraum = detailArray.Zeitraum;
if (searchString.contains(ab.toLowerCase())) //searchString.indexOf(ab) >= 0
{
//alert('gefunden');
searchResultsArray.push(detailArray);
this.setState({ dataSource: ds.cloneWithRows(searchResultsArray) });
}
}
}
else {
this.setState({ dataSource: ds.cloneWithRows(this.state.loadedContent) });
}
},
Run Code Online (Sandbox Code Playgroud)
你可以像这样使用 indexOf 做到这一点:
if (searchString.indexOf(ab.toLowerCase()) > -1)
{
...
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17834 次 |
| 最近记录: |