Ich habe Code wie folgt. Ich benutze jtree Search filter.wie zu säen Ergebnis mehrere Wortkombination übereinstimmen in jtree Suchfilter jquery (mehrere Wort & Condition in jtree)
$(document).on("keyup paste", "input#groups-quick-filter", function(){
var tmpStr = $(this).val().replace(/\s\s+/g, ' ');
var arrStr = tmpStr.split(' ');
var strCnt = "";
for(i = 0; i < countWords(tmpStr); i++){
strCnt = strCnt + arrStr[i] + " ";
//groupsDataTable.jstree("search", arrStr[i]);
groupsDataTable.jstree(true).search(arrStr[i]);
}
});
I jtree Array (Knoten) Wert wie dieser
1 abc
2 abc xyz
3 xyz abc
4 testabcxyz
5 test xyz
6 xyz
7 abc test xyz
8 xyzabctest
Eingangswert im Suchfilter: (. Es gibt mir) abc xyz
Result
1 abc xyz
2 xyz abc
3 testabcxyz
4 test xyz
5 xyz
6 abc test xyz
7 xyzabctest
Ich will nur Ergebnisse, die %abc% & %xyz%
enthalten nicht %abc% or %xyz%
mögen. Mein Code gib mir oder Ergebnis welches alle Wörter berücksichtigt.
Wird eine Art von Arbeits Beispiel müssen in der Lage sein, weiter zu unterstützen. Eine Sache, die mir aufgefallen ist, wenn du 'strCnt = strCnt + arrStr [i] +" ";' verwendest, könntest du 'strCnt = arrStr.join (" ") nicht verwenden? – Twisty
Erstellt diese Geige zum Testen: https://jsfiddle.net/Twisty/6s1q4L6f/ – Twisty
immer noch bekomme ich das gleiche Ergebnis wie zuvor definiert .. Ich möchte Wort, die% Test% und% abc% enthalten, so wie pro Ihre Lösung wird es gib mir ("abc") wort auch meine eingabe: test abc ergebnis: abc - (sollte nicht da sein) abc xyz - (sollte nicht -false) xyz abc - (sollte nicht -false) testabcxyz test xyz - (sollte nicht there -true) xyz - (sollte nicht -true) abc test xyz xxyzabctest * false enthalten Wort, das nicht in der Suche result.i wollen (% word1% &&% word2%) Bedingung, in der beide Wörter im Suchergebnis enthalten sein sollten –