elem.val() было бы неплохо закешировать