1

请记住,在 jQuery 中添加 .prop() 以替换元素的许多布尔类型属性/属性的 .attr()。我的问题是如何在以下代码中添加“属性”?

以下代码集在功能上执行我要求它执行的操作,但在我的浏览器调试部分中,我看到一条警告“JQMIGRATE:jQuery.fn.attr('selected') 可能使用属性而不是属性”,指的是 jquery-migrate- 1.2.1.js

                    $("<select />",{
                        "class": "align-select",
                        id: "align_select_123"
                    }).append(
                            $("<option />",{
                                value: "left",
                                selected: "selected",
                                html: "Left"
                            }),
                            $("<option />",{
                                value: "right",
                                html: "Right"
                            }),
                            $("<option />",{
                                value: "centre",
                                html: "Centre"
                            }),
                            $("<option />",{
                                value: "justify",
                                html: "Justified"
                            })
                        )

上面提到的警告是指代码的第 7 行,即 selected:“selected”。在不生成此警告的情况下获得相同代码的可能好方法是什么?
我累了:

$("<option />",{
    value: "left",
    html: "Left",
    selected
})

但它没有用!

4

2 回答 2

3

尽管我仍会在此上下文中使用该属性以提高可读性(因为确实应该使用 prop),但设置该属性将在另一个调用中:

$("<option />",{
    value: "left",
    html: "Left", 
}).prop('selected', true),
于 2014-11-27T14:49:20.680 回答
-1

你试过这样吗?

$("<option />", {
    value   : "left",
    selected: "selected",
    html    : "Left"
}
于 2014-11-27T14:49:17.410 回答