2016-04-28 2 views
0

У меня есть div с id = 'event-spot', который запускается с динамическими значениями при выборе изменения. Все, кажется, работает нормально. Но, к сожалению, первая опция в поле ввода опций выбора уже показана/выбрана в поле ввода, поэтому я не могу выбрать ее, и поэтому она не будет запускать динамические значения для нее.Первое динамическое значение должно отражать изменение без его выбора

Для других вариантов onselect.change метод запускается. Как я могу использовать первый вариант для запуска метода getSpots(), не делая ничего?

Html 
<div class="uk-margin-bottom"> 
      {!! Form::label('event_id', 'Event', array('class' => 'uk-form-label')) !!} 
      {!! Form::select('event_id', $events, null, array('class' => 'uk-width-1-1', 'id' => 'event-event_id')) !!} 
      {!! $errors->first('product_id', '<p class="error">:message</p>') !!} 
      <p class="uk-form-help-block uk-text-muted">The event you're booking</p> 
     </div> 
<div class="uk-margin-bottom"> 
    <div id="event-spots"></div> 
</div> 

Javascript 
$("#event-event_id").change(function() { 
    getSpots(); 
}); 

function getSpots() { 
    var spots = $('#event-spots'); 
    spots.empty(); 
    spots.html('<p><i class="uk-icon-refresh uk-icon-medium uk-icon-spin"></i></p>'); 
    var event_id = $("#event-event_id").val(); 
    var code = ''; 
    console.log(event_id); 
    $.get("/1/users/spots/" + event_id, function(data) { 
     spots.empty(); 
     console.log(data); 

     code += '<label for="event_id" class="uk-form-label">Select Date</label><select class="uk-width-1-1" name="event_date" id="event-date" value="select">'; 
     $.each(data.spots, function(index, value) { 
      code += '<option value="' + value.event_date + '">' + value.event_date + '</option>'; 
     }); 
     code += '</select><p class="uk-form-help-block uk-text-muted">The spot you\'re booking</p>'; 
     spots.append(code); 

    }); 
} 

А поскольку моя форма в модальном виде. как только я открою модальный, я хочу увидеть отраженное изменение. Index page on click of the new event button Only if I select another event then the date is reflected. to select the first event I first need to select the second item and then the first

ответ

0

вы можете вызвать событие изменения:

function getSpots() { 
.. 
} 

$("#event-event_id").trigger("change"); 
+0

Я попытался добавить .trigger но это не работало. Я пробовал этот путь: $ ("# event-event_id"). Trigger (function() { \t getSpots(); }); Это правильно? –

+0

Нет, вам нужно вызвать eventType, например 'change' в вашем случае – zorx

+0

Пожалуйста, проверьте скриншоты, которые я добавил. метод триггера, как вы сказали, все равно не повезло. –