Сделать option рекурсией не выходит.
почему? или ты пытаешься их вкладывать друг в друга? если так то, select поддерживает только 1 ур вложенности т.ч. либо делай вложенные dropdown меню мимикрирующие под select(ы) и сохраняй значение в input'е, либо используй стандартный select,а уровень вложенности отображай отступом в option'аx:
<option value="1">1пункт 1ур</option>
<option value="2">- 1пункт 2ур</option>
<option value="2">- 2пункт 2ур</option>
<option value="2">- - 1пункт 3ур</option>
<option value="2">2пункт 1ур</option>