开发者

Finding multiple values in a string Jquery / Javascript

开发者 https://www.devze.com 2023-02-03 05:50 出处:网络
I have a three strings of categories \"SharePoint,Azure,IT\"; \"BizTalk,Finance\"; \"SharePoint,Finance\";

I have a three strings of categories

  1. "SharePoint,Azure,IT";
  2. "BizTalk,Finance";
  3. "SharePoint,Finance";

I need to find a way to check if a string contains for example "SharePoint" and "IT", or "BizTalk" and "Finance". The tests are individual strings themselces.

How would i loop through all the 开发者_运维问答category strings (1 - 3) and only return the ones which have ALL instances of the souce.

i have tried the following

            function doesExist(source, filterArray)
        {
            var substr = filterArray.split(" ");

            jQuery.each(substr, function() {
                var filterTest = this;                              
                if(source.indexOf(filterTest) != -1 )
                {                       
                    alert("true");
                    return true;
                }else
                {   
                    alert("false");
                    return false;           
                }                                       
            });
        }

with little success...the code above checks one at a time rather than both so the results returned are incorrect. Any help would be great.

Thanks

Chris

UPDATE: here is a link to a work in progress version..http://www.invisiblewebdesign.co.uk/temp/filter/#


Try this:

function doesExist(source, filter)
{
    var sourceArray = source.split(",");
    var filterArray = filter.split(",");

    var match = true;
    $.each(filterArray, function(i, val) {
         match = match && ($.inArray(val, sourceArray) != -1);
    });
    return match;
}

gives doesExist("SharePoint,Azure,IT", "SharePoint,IT")==true but doesExist("SharePoint,Azure,IT", "SharePoint,BizTalk")==false.


you could try something like:

if(filterArray.indexOf("SharePoint") > -1 && filterArray.indexOf("IT") > -1) {
...
}
0

精彩评论

暂无评论...
验证码 换一张
取 消