Фрагмент jQuery не работает

0

Я не знаю много о jQuery, но я нашел полезный фрагмент, который я хотел включить в свой код.

Я пробовал следующее:

<form>
    <fieldset>
        <legend>Kies je activiteiten</legend>
        <select id="tenemen" class="chosen-select" multiple style="width:350px;" multiple>
            {% for activiteit in activiteiten %} 
            <option value="{{activiteit.id}}" selected>{{activiteit.name}}</option>
            {% endfor %}
        </select>
        <select id="telaten" class="chosen-select" multiple style="width:350px;" multiple>
        </select>
    </fieldset> 
</form>
<script>
$('#tenemen').change(function(){
$('#telaten').html(''); //Clear
$('#tenemen option:not(:selected)')
.clone()
.appendTo('#telaten')
})
</script>

Тегами {%%} являются Jinja's, но это не имеет значения.

Я пробовал его в JSFiddle, и он работает, поэтому я не понимаю, почему он не работает в моем шаблоне. jQuery загружается в базовый шаблон следующим образом: <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.js"></script>

Я действительно не знаком с jQuery, так что это может быть что-то очень глупое. Любая помощь приветствуется.

  • 0
    Хорошо, есть некоторый код, и он делает то, что ему было сказано, но что он должен был сделать? Вот в чем вопрос ... вы должны написать это
  • 0
    Только то, что должен был сделать оригинальный фрагмент; создать новый выбор с элементами, которые не были выделены в исходном выборе.
Теги:
jinja2

1 ответ

0

вам нужно подождать, пока документ будет готов...

$(function(){
   $('#tenemen').change(function(){
     $('#telaten').html(''); //Clear
     $('#tenemen option:not(:selected)')
     .clone()
     .appendTo('#telaten')
   })
})

причина, по которой он работает в jsfiddle, заключается в том, что jsfiddle автоматически запускает ваш код "onload". когда вы вставляете код в настоящий html файл, вам нужно сообщить браузеру, что он должен ждать, пока документ не будет загружен перед выполнением кода.

  • 0
    Ожидание не имеет значения. Документ готов, но он все еще не работает.
  • 0
    приведенный выше код должен работать точно так же, как в jsfiddle. Если это не так, у вас есть ошибки в другом месте ... Я думаю, ваш движок шаблонов. попробуйте запустить ваш код локально без движка шаблонов ... также проверьте консоль js на наличие ошибок.
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню