为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用jQuery向DropDownList添加选项?

如何使用jQuery向DropDownList添加选项?

狐的传说 2019-07-31 15:13:16
如何使用jQuery向DropDownList添加选项?正如问题所说,如何使用jQuery向DropDownList添加新选项?谢谢
查看完整描述

3 回答

?
慕的地6264312

TA贡献1817条经验 获得超6个赞

不使用任何额外的插件,

var myOptions = {
    val1 : 'text1',
    val2 : 'text2'};var mySelect = $('#mySelect');$.each(myOptions, function(val, text) {
    mySelect.append(
        $('<option></option>').val(val).html(text)
    );});

如果您有很多选项,或者需要非常频繁地运行此代码,那么您应该考虑使用DocumentFragment而不是不必要地多次修改DOM。对于少数选项,我会说它不值得。

- - - - - - - - - - - - - - - - 添加 - - - - - - - - - --------------

DocumentFragment是速度增强的好选择,但document.createElement('option')由于IE6和IE7不支持,我们无法创建选项元素。

我们可以做的是,创建一个新的选择元素,然后附加所有选项。一旦循环完成,将其附加到实际的DOM对象。

var myOptions = {
    val1 : 'text1',
    val2 : 'text2'};var _select = $('<select>');$.each(myOptions, function(val, text) {
    _select.append(
            $('<option></option>').val(val).html(text)
        );});$('#mySelect').append(_select.html());

这样我们只会修改DOM一次!


查看完整回答
反对 回复 2019-07-31
?
浮云间

TA贡献1829条经验 获得超4个赞

没有插件,如果不使用尽可能多的jQuery,这可以更容易,而不是更老的学校:

var myOptions = {
    val1 : 'text1',
    val2 : 'text2'};$.each(myOptions, function(val, text) {
    $('#mySelect').append( new Option(text,val) );});

如果要指定选项a)是否为默认选择值,并且b)现在应该选择,则可以传入另外两个参数:

    var defaultSelected = false;
    var nowSelected     = true;
    $('#mySelect').append( new Option(text,val,defaultSelected,nowSelected) );


查看完整回答
反对 回复 2019-07-31
?
蝴蝶刀刀

TA贡献1801条经验 获得超8个赞

使用插件:jQuery Selection Box。你可以这样做:

var myOptions = {
        "Value 1" : "Text 1",
        "Value 2" : "Text 2",
        "Value 3" : "Text 3"
    }
    $("#myselect2").addOption(myOptions, false);


查看完整回答
反对 回复 2019-07-31
  • 3 回答
  • 0 关注
  • 549 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信