Есть вариант, который работает примерно так как ты ждал этого от своего кода:
$(document).on('click', 'a.no_list', function(){
// этот обработчик сработает только если элемет соответствует селектору (в момент события) a.no_list
});
$(document).on('click', 'a.in_list', function(){
// этот обработчик сработает только если элемет соответствует селектору (в момент события) a.in_list
});
Работает это так: обработчик (скрытый, служебный, так сказать) фактически навешивается на document. В момент клика элемент, по которому произошел клик проверяется: соответствует ли он заданному селектору. Если соответствует, то запускается обработчик (тот что ты задал). Таким образом селектор проверяется в момент события, а не в момент навешивания обработчика.
Вместо document можно прописать более специфичный элемент, например div.card