为什么 attr(attributeName, value) 不在 DOM 属性 NamedNodeMap 中创建新的 Attr 对象?

发布于 2024-10-07 11:36:02 字数 703 浏览 1 评论 0原文

我可以通过以下方式更改 HTMLOptionElement 的 value 属性:

sizeOptionToBeSelected.attr('value', '555');

它更改 HTMLOptionElement 的 value 属性以及同一 HTMLOptionElement 对象的 NamedNodeMap 属性中 DOM Attr 对象中的值。

但是,我无法使用以下代码创建新的 Attr“selected”或更改 HTMLOptionElement 的 selected 属性

sizeOptionToBeSelected.attr('selected', 'true');

您认为这是为什么?我该如何做到这一点?

来自 jquery 文档:

我们可以添加相同的属性 方式: $('#greatphoto').attr('标题', '凯莉·克拉克拍摄的照片');

附加说明:
- 代码在 $(document).ready( 函数内部运行,因此加载没有问题。
- 我使用最新的 Google Chrome 8.0.552.215 测试版。

亲切的问候,
暴君

I can change the value attribute of a HTMLOptionElement by doing so:

sizeOptionToBeSelected.attr('value', '555');

It changes the value property of the HTMLOptionElement and the value in the DOM Attr object in the NamedNodeMap attributes property from the same HTMLOptionElement object.

But, I cannot create a new Attr "selected" or change the selected property of the HTMLOptionElement with the following code:

sizeOptionToBeSelected.attr('selected', 'true');

Why do you think this is? How can I do this?

From jquery documentation:

We can add an attribute the same
way:
$('#greatphoto').attr('title', 'Photo by Kelly Clark');

Additional explanations:
- The code runs inside the $(document).ready( function so there is no problem with the loading.
- I use the latest Google Chrome 8.0.552.215 beta.

Kind Regards,
Despot

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

似最初 2024-10-14 11:36:02

有点令人困惑的是,jQuery 倾向于将属性和特性视为同一事物。所以 $(elem).attr('selected', true) 实际上是将 elemselected 属性设置为 true,而不是其属性。

很少有理由需要设置selected属性。设置selected(和defaultSelected属性就足够了。

另外,请记住,selected 属性对应于默认状态,而不是当前状态。

jQuery, somewhat confusingly, tends to treat attributes and properties as the same thing. So $(elem).attr('selected', true) is actually setting elem's selected property to true, not its attribute.

There are very few reasons to need to set the selected attribute. Setting the selected (and defaultSelected) properties should suffice.

Also, bear in mind that the selected attribute corresponds to the default state, not the current state.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文