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");