Автовыбор Jquery не работает на IE8 - PullRequest
2 голосов
/ 04 августа 2011

Я использовал источник с этой страницы: http://jqueryui.com/demos/autocomplete/#multiple

Все, что я изменил, это список.Это отлично работает в Firefox, но не работает в IE с сообщением ниже.

Нужно ли добавить один из этих тегов соответствия?

Сведения об ошибке веб-страницы

Пользовательский агент: Mozilla / 4.0 (совместимый; MSIE 8.0; Windows NT 6.0; Trident / 4.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 1.1.4322; .NET CLR 3.5.30729; .NET CLR 3.0.30618)Отметка времени: среда, 3 августа 2011 г. 15:56:02 UTC

Сообщение: «метка» не указана или не содержит объект Строка: 329 Символ: 114 Код: 0 URI: ../jquery-ui-1.8.14.custom.min.js

Сообщение: 'label' является нулевым или не является объектом Строка: 329 Char: 114 Код: 0 URI: ../jquery-ui-1.8.14.custom.min.js

<script type="text/javascript">
    $(function() {
        var tagsArray = [<?php foreach($tags as $tag){echo '"'.$tag->name.'",';} ?>];
        function split( val ) {
            return val.split( /,\s*/ );
        }
        function extractLast( term ) {
            return split( term ).pop();
        }

        $( "#tags" )
            .bind("keydown",function(event){
                if(event.keyCode === $.ui.keyCode.TAB &&
                        $(this).data("autocomplete").menu.active){
                    event.preventDefault();
                }
            })
            .autocomplete({
                minLength: 0,
                source: function(request, response){
                    response($.ui.autocomplete.filter(
                        tagsArray, extractLast(request.term)));},
                focus: function() {return false;},
                onSelect: function() {},
                select: function(event, ui){
                    var terms = split(this.value);
                    terms.pop();
                    terms.push(ui.item.value);
                    terms.push("" );
                    this.value = terms.join(", ");
                    return false;
                }
            });
    });
</script>

1 Ответ

4 голосов
/ 05 августа 2011

Это завершающий символ , в конце списка (что приемлемо для большинства других языков, но в IE8 это не JS). Спасибо за помощь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...