Comment vérifier l'existence de l'ID en utilisant jQuery?

Je veux avoir une ligne de code similaire à celle ci-dessous:

var name = $('#input-name').attr("value"); 

Toutefois, l'identifiant «nom d'entrée» n'est pas garanti. Comment vérifie-t-on son existence afin que l'affectation ne crée pas d'erreur?

 if ($('#input-name').length) { // do something } 

Vérifiez pour .length ou .size () sur l'objet. La sélection n'échoue pas, jQuery renverra toujours un objet.

Dans mon test, l'affectation n'a pas provoqué d'erreur, elle est simplement retournée undefined .

Dans ce cas, la solution serait la suivante:

 var name = $('#input-name').attr("value"); if (name) { // blah blah } 

Ou peut-être:

 var name = $('#input-name').attr("value") || 'defaultValue'; 

… si cela a du sens dans votre cas.

 var name; if ($('#input-name').length > 0) name= $('#input-name').attr("value");