Maison >interface Web >Questions et réponses frontales >Ce que jQuery renvoie s'il ne trouve pas l'objet

Ce que jQuery renvoie s'il ne trouve pas l'objet

PHPz
PHPzoriginal
2023-04-17 11:30:26877parcourir

Dans le développement front-end, nous utilisons souvent la bibliothèque jQuery pour faire fonctionner des éléments DOM, envoyer des requêtes Ajax et d'autres opérations. Mais lorsque vous utilisez jQuery, vous rencontrez parfois certains problèmes, comme ne pas pouvoir trouver un objet ou un élément. Que renvoie jQuery s’il ne trouve pas l’objet ?

Tout d'abord, vous devez comprendre le type de valeur de retour du sélecteur jQuery. Le sélecteur jQuery renvoie un objet jQuery, qui est une collection d'éléments DOM correspondants. Si le sélecteur correspond à plusieurs éléments, l'objet jQuery contient plusieurs éléments. Si aucun élément ne correspond, l'objet jQuery est une collection vide.

Lorsque jQuery ne trouve pas un objet ou un élément, il renvoie un objet jQuery vide. Cet objet vide est créé par la fonction jQuery.fn.init(). Il n'a aucune propriété ni méthode et ne peut stocker que certains objets jQuery.

Par exemple, le code suivant tentera de trouver un élément avec l'identifiant "not-exist" :

var $elem = $('#not-exist');
console.log($elem);

Comme l'élément "not-exist" n'existe pas, le sélecteur jQuery ne peut pas trouver l'objet correspondant, il le fera donc renvoie un objet jQuery vide, qui est []. On peut déterminer si l'élément correspondant a été trouvé en jugeant la longueur de cet objet :

if ($elem.length === 0) {
    console.log('没有找到相应的元素!');
}

Bien sûr, si on n'a pas besoin de sortir des informations sur la console, on peut aussi utiliser directement le code suivant :

if (!$('#not-exist').length) {
    // 代码不执行
}

Si on appelez une méthode inexistante, jQuery générera une erreur "TypeError : $elem.fn is indéfini". Par conséquent, lorsque vous utilisez jQuery pour faire fonctionner des éléments DOM, nous devons d'abord déterminer si le sélecteur correspond à l'élément correspondant pour éviter les erreurs lorsque l'élément est introuvable.

En plus d'utiliser des sélecteurs pour faire correspondre les éléments, nous utilisons souvent également certaines méthodes pratiques de jQuery, telles que $.ajax(), $.get(), etc. Ces méthodes renverront un objet Promise ayant échoué lorsque l’URL correspondante est introuvable.

Par exemple, le code suivant utilisera la méthode $.ajax() pour demander une URL qui n'existe pas :

$.ajax({
    url: 'http://example.com/404',
    success: function () {
        console.log('请求成功');
    },
    error: function () {
        console.log('请求失败');
    }
});

Puisque l'URL demandée n'existe pas, $.ajax() renverra un objet Promise ayant échoué, appelez la fonction de rappel d'erreur et le message de sortie « échec de la demande ».

En général, jQuery renverra un objet jQuery vide ou un objet Promise ayant échoué lorsqu'il ne trouve pas l'objet ou l'URL correspondant. Lorsque nous utilisons jQuery, nous devons faire attention à déterminer si le sélecteur correspond à l'élément ou si l'URL demandée existe pour éviter des erreurs inutiles.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn