Как найти элемент indexOf в массиве jQuery? - PullRequest
4 голосов
/ 14 октября 2011

У меня есть два селектора

    var allNodes = $("a.historyEntry");
    var errorNodes = $("a.historyEntry.error");

Я хотел бы найти узел перед первым узлом ошибки, поэтому мне нужно найти индекс первого узла ошибки, как это сделать?

Я пытался использовать метод inArray, но он не работает для этого

$.inArray(allNodes, errorNodes.first())

или

$.inArray(allNodes, $(errorNodes.first()))

Есть ли какой-нибудь быстрый способ сделать это в jQuery или я должен использовать для цикла?

Ответы [ 3 ]

10 голосов
/ 14 октября 2011

index()?

Это похоже на indexOf ... но только без Of ... возвращает индекс элемента, если он существует, и -1, если его нет.

2 голосов
/ 14 октября 2011

$. InArray значение - это первый параметр, затем массив:

$.inArray(allNodes, errorNodes.first())

должно быть:

$.inArray(errorNodes.first(), allNodes)

Пример

2 голосов
/ 14 октября 2011

Использование index(). Он делает то же самое, что и indexOf в Java.

...