Я могу придумать два пути.
Вы можете попробовать window[circuit]()
, если это глобальная функция.Другой вариант - использовать eval
, но eval
- зло.Поэтому, чтобы избежать зла eval
, лучшим способом может быть поддержка карты обработчиков:
var handlers = {
someValue: function() {
...
},
otherValue: function() {
...
}
};
На этой карте вы ассоциируете someValue
и otherValue
с анонимными функциями.Поэтому, если предположить, что в поле выбора содержатся параметры someValue
и otherValue
, соответствующая функция будет вызываться в зависимости от того, что они выбирают.
Тогда все, что вам нужно сделать, это handlers[circuit]()
.