jQuery, если значение Cookie не существует из нескольких IndexOf - PullRequest
0 голосов
/ 16 июня 2011

У меня есть файл cookie, который я создаю с помощью jQuery, с именем 'testCookie'.Я хочу проверить, не существует ли какое-либо из этих ЗНАЧЕНИЙ, если они НЕ (или равны или меньше -1) Я хочу что-то сделать, приведенный ниже код в настоящее время ничего не делает и предполагает, что код недаже там и загружает все после оператора if, независимо от значения куки, есть идеи?

if ($.cookie('testCookie').indexOf('shopping','pricegrabber','nextag','shopzilla')<=-1) {

Ответы [ 2 ]

0 голосов
/ 16 июня 2011

синтаксис indexOf() выглядит следующим образом:

['a', 'b', 'c', 'd'].indexOf('b'); // returns 1

Вы можете использовать метод jQuery .inArray():

$.inArray('b', ['a','b','c','d']); // returns 1

если $.cookie('testCookie') возвращает строку, вы можете проверить это следующим образом:

if (['grabber','nextag','shopzilla'].indexOf($.cookie('testCookie')) == -1)  {
    // your code
}

или

if ($.inArray($.cookie('testCookie', ['grabber','nextag','shopzilla']) == -1) {
    // your code
}
0 голосов
/ 16 июня 2011

Функция indexOf может принимать только одну строку за раз. Для этого вам нужно иметь несколько предложений в вашем выражении if, соединенных с &&:

if(cookieValue.indexOf('shopping') == -1 && cookieValue.indexOf('pricegrabber') == -1)

Вы можете добавить все свои условия в это заявление if. && означает «если это и это» и т. Д. И т. Д.

...