Javascript 使用jQuery追加选择字段的选项

Javascript 使用jQuery追加选择字段的选项,javascript,jquery,dom,Javascript,Jquery,Dom,我正在使用以下代码: var tempObj = { "noselected" : "", "option1": "item1", "option2": "item2", "option3": "item3" }; $.each(tempObj, function (val, text) { $(this).append($('<option />', { value: val,

我正在使用以下代码:

var tempObj = {
    "noselected" : "",
    "option1": "item1",
    "option2": "item2",
    "option3": "item3"
};

$.each(tempObj, function (val, text) {
            $(this).append($('<option />', {
                value: val,
                text: text
            }));
        });

而且只有第一个元素没有附加。

您需要这样做-

$.each(tempObj, function (val, text) {
    $('<option />', {
        value: val,
        text: text
    }).appendTo('select');
});
$('select').click(function () {
    var $this = $(this);
    $.each(tempObj, function (val, text) {
        $this.append($('<option />', {
            value: val,
            text: text
        }));
    });
});

演示
-->

您需要这样做-

$.each(tempObj, function (val, text) {
    $('<option />', {
        value: val,
        text: text
    }).appendTo('select');
});
$('select').click(function () {
    var $this = $(this);
    $.each(tempObj, function (val, text) {
        $this.append($('<option />', {
            value: val,
            text: text
        }));
    });
});
演示
-->

$。每个(tempObj,函数(val,text){
$('select')。追加($('',{
值:val,
文本:文本
}));
});
$。每个(tempObj,函数(val,text){
$('select')。追加($('',{
值:val,
文本:文本
}));
});

change
$(this)
引用
select
-
$('select#someId')。append(…)
。append()
用于将节点插入DOM。您需要使用选择器获取页面上的
select
元素,然后在处理程序内的tempObj上迭代。追加似乎部分起作用。$(this)与我的select元素in$关联。每条语句,
this
引用列表中的单个项(该$。每个在迭代中)change
$(this)
引用
select
-
$('select#someId')。append(…)
。append()
用于将节点插入DOM。您需要使用选择器获取页面上的
select
元素,然后在处理程序内的tempObj上迭代。追加似乎部分起作用。$(this)与我的select元素in$相关联。每个语句,
this
都引用列表中的单个项(即$。每个在迭代中)谢谢@pXL,但我需要参考一下。我可以吗?@Joseph82,不,
这个
不是指你循环中的选择。无论如何-为什么需要引用此?因为我的代码在$(“选择”)中。在('click',function(){…})上;所以我需要精确地引用我点击的选择。@Joseph82,好吧,如果是这样的话,是的,你可以这样做
-->
谢谢@pXL,但我需要引用这个。我可以吗?@Joseph82,不,
这个
不是指你循环中的选择。无论如何-为什么需要引用此?因为我的代码在$(“选择”)中。在('click',function(){…})上;所以我需要精确地引用我点击的选择。@Joseph82,好吧,如果是这样的话,是的,你可以这样做
-->