表单属性问题readonly、disabled、checked,prop的使用

获取在匹配的元素集中的第一个元素的属性值。

随着一些内置属性的DOM元素或window对象,如果试图将删除该属性,浏览器可能会产生错误。jQuery第一次分配undefined值的属性,而忽略了浏览器生成的任何错误

我一般用在

$("input[type='checkbox']").prop("disabled", false);
$("input[type='checkbox']").prop("checked", true);
$("input[type='checkbox']").prop("readonly", true);


这几个属性的控制因为他们只有出现后就是true了,用attr设置false是没用的要用prop来修改才可以

1、readonly属性

readonly 属性规定输入字段为只读。
只读字段是不能修改的。不过,用户仍然可以使用 tab 键切换到该字段,还可以选中或拷贝其文本。
readonly 属性可以防止用户对值进行修改,直到满足某些条件为止(比如选中了一个复选框)。然后,需要使用 JavaScript 消除 readonly 值,将输入字段切换到可编辑状态。
readonly 属性可与 <input type=”text”> 或 <input type=”password”> 配合使用。

2、disabled 属性

disabled 属性规定应该禁用 input 元素。
被禁用的 input 元素既不可用,也不可点击。可以设置 disabled 属性,直到满足某些其他的条件为止(比如选择了一个复选框等等)。然后,就需要通过 JavaScript 来删除 disabled 值,将 input 元素的值切换为可用。
注释:disabled 属性无法与 <input type=”hidden”> 一起使用。

 

(二)、在jquery和javascript中使用时需要注意的问题

1、在jquery中取input的readonly属性时,设置为readOnly,才能取到值

$(“#input”).readOnly,就能取到值

2、在javascript设置input的readonly属性时,同样应设置为readOnly,方有效。

document.getElementByIdx_x('input').readOnly= true;(注意中间那个O是大写的,不然就无效了)

 
原文地址:https://www.cnblogs.com/lichuntian/p/4870802.html