Javascript 动态替换下拉菜单选项jQuery

Javascript 动态替换下拉菜单选项jQuery,javascript,jquery,Javascript,Jquery,我有一个下拉菜单,我想在单击事件时更改其选择选项。应删除当前的选择选项,并替换为新的选项数组。 以下是: 下面是另一个无法修复的尝试: $(document).ready(function () { var dropdown = $('<select>'); dropdown.options = function (data) { var self = this; if

我有一个下拉菜单,我想在单击事件时更改其选择选项。应删除当前的选择选项,并替换为新的选项数组。 以下是:

下面是另一个无法修复的尝试:

 $(document).ready(function () {
            var dropdown = $('<select>');
            dropdown.options = function (data) {
                var self = this;
                if (data.length > 0) {
                    //how to remove the current elements
                }
                $.each(data, function (ix, val) {
                    var option = $('<option>').text(val);
                    data.push(option);
                });
                self.append(data)
            }
            dropdown.clear = function () {
                this.options([]);
            }
            var array = ['one', 'two', 'three'];
            dropdown.options(array);
            $('body').append(dropdown);
            $('#btnSubmit').on('click', function (ix, val) {
                //should clear out the current options
                //and replace with the new array
                var newArray = ['four', 'five', 'six'];
                dropdown.clear();
                dropdown.options(newArray);
            });
        });
$(文档).ready(函数(){
var下拉列表=$('');
dropdown.options=函数(数据){
var self=这个;
如果(data.length>0){
//如何删除当前元素
}
$。每个(数据、函数(ix、val){
var选项=$('').text(val);
数据推送(选项);
});
self.append(数据)
}
dropdown.clear=函数(){
这是一个选项([]);
}
变量数组=['1','2','3'];
选项(数组);
$('body').append(下拉菜单);
$('btnSubmit')。在('click',函数(ix,val){
//应该清除当前的选项
//并替换为新阵列
var newArray=['four','five','six'];
下拉列表。清除();
选项(newArray);
});
});

要清除此选项,请选择使用以下代码:

dropdown.empty();

您所要做的就是将
append()
更改为
html()
,因为
html()
替换了元素的现有内容

 dropdown.options = function (data) {
            var self = this;
            $.each(data, function (ix, val) {
                var option = $('<option>').text(val).val(val);/* added "val()" also*/
                data.push(option);
            });
            self.html(data)
        }
dropdown.options=函数(数据){
var self=这个;
$。每个(数据、函数(ix、val){
var option=$('').text(val).val(val);/*还添加了“val()”*/
数据推送(选项);
});
html(数据)
}

我把这个摆弄了太久。我知道我不会走得太远,谢谢@charlietfl