Ma perche` la stringa deve essere nascosta in un hidden?

Perche` non puo` essere nel value del primo select? Oppure in una matrice JS? (ambedue le cose le puoi realizzare dinamicamente lato server).

E poi non si puo` popolare una select come hai fatto tu. Rivediti i numerosi thread in proposito.

E ancora:
se la stringa e` quella che dicevi, .substr(1,1) e` il segno -