У меня есть элемент select в форме, и мне нужно, чтобы при нажатии на него выполнялся какой-то код И когда я выбирал параметр, код не выполнялся.
Приведенный ниже код выполняется дважды, поэтому я не могу выбрать опцию, код выполняется снова сам, и мне остается сбросить выбранную опцию.
HTML:
<select class="form-control" id="opportunity_id" name="opportunity_id">
<option value="">(Choose opportunity)</option>
</select>
JS:
$('#opportunity_id').on('click', function(ev) {
$.ajax({
url: "/opportunitylist/",
type: 'GET',
success: function(resOpportunities) {
var $select = $('#opportunity_id');
$select.find('option').remove();
var count = 0;
$select.append("<option value=''>(Choose opportunity)</option>");
$.each(eval(resOpportunities), function(key, value) {
$select.append('<option value=' + value[0] + '>' + value[1] + '</option>');
count = count+1;
});
}
});
});
Мой вопрос, есть какое-то исправление для этого кода? Как я могу выполнить этот код один раз каждый раз, когда я нажимаю на элемент select?