Desde cuándo onclick es obsoleto?
Hasta donde sé, la función .on('click') de jquery agrega el evento onclick a los elementos seleccionados. Entonces el problema más bien radica en la forma que asignas el evento y no en la funcionalidad de javascript.