【发布时间】:2019-09-04 04:32:14
【问题描述】:
我有一个使用输入的 D3 树搜索。这在输入正确的大小写时效果很好,但我需要让它以小写形式工作(节点名称通常有驼峰式大小写)。
我有以下使用搜索输入的搜索功能:
function searchTree( d ) {
if ( d.children )
d.children.forEach( searchTree );
else if ( d._children )
d._children.forEach( searchTree );
var searchFieldValue = eval( searchField );
if ( searchFieldValue && searchFieldValue.match( searchText ) ) {
// Walk parent chain
var ancestors = [];
var parent = d;
while ( typeof ( parent ) !== "undefined" ) {
ancestors.push( parent );
//console.log(parent);
parent.class = "found";
parent = parent.parent;
}
//console.log(ancestors);
}
}
如果为d.name 输入正确的大小写,则此方法有效,但在大小写不同时不匹配。因此,在从输入中搜索时,我需要将其更改为小写搜索。
如何更改搜索功能以获得小写匹配?
【问题讨论】:
-
要搜索的字符串和要搜索的字符串都小写
-
您可以使用
searchFieldValue.toLowerCase().match( searchText.toLowerCase() )来匹配字符串。这会将文本都小写并匹配它们。更新了小提琴link -
独行侠..谢谢,想把它写成答案吗?
-
是的,写作。
标签: javascript jquery d3.js