if variable contains

Possible Duplicate:
JavaScript: string contains

I have a postcode variable and want to use JS to add a location into a different variable when the postcode is changed/entered. So for example if ST6 is entered I would want Stoke North to be entered.

I somehow need to do an if statement to run through eg

if(code contains ST1)
{
    location = stoke central;
}
else if(code contains ST2)
{
    location = stoke north;
} 

etc...

How would I go about this? It's not checking if 'code' equals a value but if it contains a value, I think this is my problem.


You might want indexOf

if (code.indexOf("ST1") >= 0) { ... }
else if (code.indexOf("ST2") >= 0) { ... }

It checks if contains is anywhere in the string variable code . This requires code to be a string. If you want this solution to be case-insensitive you have to change the case to all the same with either String.toLowerCase() or String.toUpperCase() .

You could also work with a switch statement like

switch (true) {
    case (code.indexOf('ST1') >= 0):
        document.write('code contains "ST1"');
        break;
    case (code.indexOf('ST2') >= 0):
        document.write('code contains "ST2"');        
        break;        
    case (code.indexOf('ST3') >= 0):
        document.write('code contains "ST3"');
        break;        
    }​

你可以使用正则表达式:

if (/ST1/i.test(code))

if (code.indexOf("ST1")>=0) { location = "stoke central"; }

链接地址: http://www.djcxy.com/p/2044.html

上一篇: 像jQuery中包含.Contains

下一篇: 如果变量包含