javascript - 使用 .prop() 进行检查和禁用的 jquery 1.6.2 问题

标签 javascript jquery checkbox dom-manipulation jquery-1.6

<分区>

Possible Duplicate:
.prop() vs .attr()

请看看这个 fiddle :

http://jsfiddle.net/DGzvP/

$("#test").prop({
    checked: true,
    disabled: true
});

$("#result").text($("#container").html());

你会看到输出是:

<input disabled="disabled" id="test" type="checkbox"> 

这是FF 5里的,为什么要加disabled属性,不加checked属性?我希望它能以一致的方式做到这两点。

编辑:

我现在意识到每个浏览器的结果都完全不同。

更多结果:

IE6/7:

<INPUT id=test disabled type=checkbox CHECKED> 

Chrome 13:

<input id="test" type="checkbox" disabled="">

IE8:

<INPUT id=test disabled type=checkbox> 

最佳答案

“.prop()”方法是关于在 DOM 节点上设置/获取属性不是关于设置属性。因此,它不会添加任何 属性。您看到的是 Firefox 5“innerHTML”代码的行为,而不是 jQuery 的行为。

如果您想使用 HTML 或 XHTML(或您的 DOM 来自的任何内容)的属性,请使用“.attr()”。然而,对于使用实时 DOM 的 JavaScript 中的大多数用途,您应该使用“.prop()”。

关于javascript - 使用 .prop() 进行检查和禁用的 jquery 1.6.2 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6782613/

相关文章:

javascript - 如何使用javascript实现验证?

javascript - 使用 Immutable.js 的 mergeDeep() 时丢失属性

jquery - 无法在成功或完成时删除父级 <li>,但可以在此之前

javascript - 如何获取选中的复选框在表格中的位置

javascript - Angular 指令访问范围内的值

javascript - 如何在 Select2 中从数据源设置 data-* ?

javascript - Amcharts.js 无法正确绘制图表

jquery - iDangero.us Swiper 更新功能在幻灯片显示/隐藏后不起作用

php - 在mysql中插入多个复选框

javascript - 从更新下拉框重置复选框