Это потому, что вы используете append во втором раскрывающемся списке:
$ ('# outletCode'). Append ($ (''). Text (value) .attr ('value', значение));
blockquote>Вы должны удалять ранее добавленную опцию во втором раскрывающемся списке каждый раз, когда добавляете новую опцию. Вы можете сохранить предыдущую опцию в глобальной переменной и удалять ее каждый раз, когда добавляете новую опцию во второй выпадающий список.
var previousOption; $('#myselect').on('change', function() { var selectedOutlet =this.value; alert(selectedOutlet); $.ajax({ async: true, url : "OutletCode", method : "GET", dataType : "json", contentType: "application/json; charset=utf-8", success: function( json ) { $.each(json, function(i, value) { $('#outletCode').append($('<option>').text(value).attr('value', value)); $("#outletCode option[value="+previousOption]).remove(); previousOption = value; }); } }); });
Google теперь открыл минификатор , который они используют вместе с некоторыми другими внутренними функциями JavaScript.
Все это под названием "Closure Tools" и было объявлено ранее в этом месяце.
Вот minifiers, о которых я знаю: упаковщик Dean Edwards; Компрессор YUI; JSMIN; и компрессор Dojo
В дополнение к ним компилятор GWT делает вполне немного для создания эффективных файлов JavaScript из файлов Java. Это не удивило бы меня если, именно это они используют.
Я полагаю, что YUICompressor делает № 1, за исключением имен функций и № 2 с помощью специального синтаксиса, который удален во время сжатия.
3. Просто задача сборки, не функция компрессора.
Простой онлайн-javascript minifier, основанный на сейфе в dojo, можно найти по адресу http://netspurt.com
Там также ] порт .NET для YUI Compressor , который позволяет: -
То, что вы описываете, является «обфускатором», а не минификатором, и их легко найти, выполнив поиск по запросу «Обфускатор Javascript».
Наш Обфускатор ECMAScript SD Thicket и запутывает, и минимизирует одновременно.