Vorrei verificare se un valore di dati jQuery è stato applicato a un oggetto. Per esempio, il codice altrove può assegnare i dati a un oggetto:Un modo corretto per verificare un particolare valore .data() in un oggetto jQuery?
$myObject.data('hello','world');
Altrove, voglio verificare se un valore è stato dato alla proprietà data ciao.
Qual è il modo corretto di gestirlo? .hasData
sembrava la scelta più ovvia ma sembra non funzionare come fa hasClass in quanto non sembra che tu possa passare un particolare nome di elemento dati ad esso.
quindi, useresti qualcosa come 'if (typeof $ myObject.data ('hello') ===" undefined "))'? Questo dovrebbe funzionare, ma sembra 'un-jQuery-ish';) –
@DA. Non esiste un metodo "jQuery-ish" per la tua richiesta. Puoi scrivere un plugin, se lo desideri. Tutto ciò che serve è questa informazione: 1. Dopo aver assegnato un valore usando '.data()', l'elemento ** DOM ** riceve una proprietà il cui nome è uguale a '$ .expando'. 2. Questa proprietà, ad esempio "jQuery1710979685063056744", contiene un identificatore. 3. Questo identificativo, ad es. "29" corrisponde a una chiave in '$ .cache', ad es. '$ .cache [29]'. I dati sono memorizzati in '$ .cache [29] .data'. –