|
javascript中input中readonly和disabled区别,在开发中可能会常有用到,利用js动态改变input的属性
Readonly和Disabled是用在表单中的两个属性,它们都能够做到使用户不能够更改表单域中的内容。但是它们之间有着微小的差别,总结如下:
Readonly只针对input(text / password)和textarea有效,而disabled对于所有的表单元素都有效,包括select, radio, checkbox, button等。但是表单元素在使用了disabled后,当我们将表单以POST或GET的方式提交的话,这个元素的值不会被传递出去,而 readonly会将该值传递出去(这种情况出现在我们将某个表单中的textarea元素设置为disabled或readonly,但是submit button却是可以使用的)。
例子
复制代码 代码如下: body> <form id="form1" name="form1" method="get" action=""> <input name="q1" type="text" id="q1" value="readonly" readonly="true" /> <input name="q2" type="text" disabled="disabled" id="q2" value="disabled" /> <input type="submit" name="Submit" value="Submit" /> </form>
js控制代码
复制代码 代码如下: <body> <form enctype="multipart/form-data" action="sign.php" method="post" name="moblie_act_form" id="moblie_act_form" > <input type="text" class="input" id="mobile" name="mobile" value="{$mobile}" readonly="true" disabled="disabled"> <input type="button" value="修改" onClick="modify_phone()"> </form> </html> <script language="javascript"> function modify_phone(){ if(confirm("您确定要修改您的手机号码吗?")){ document.moblie_act_form.mobile.readOnly = false; document.moblie_act_form.mobile.disabled = false; } return true; } </script>
实例
复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> </head>
<body> <form id="form1" name="form1" method="get" action=""> <input name="q1" type="text" id="q1" value="readonly" readonly="true" /> <input name="q2" type="text" disabled="disabled" id="q2" value="disabled" /> <input type="submit" name="Submit" value="Submit" /> </form> </body> </html>
属性 值 描述 disabled disabled
当 input 元素首次加载时禁用此元素,这样用户就无法在其中写文本,或选定它。 注释:不能与 type="hidden" 一同使用。
readonly readonly 指示此域的值不能被修改。 注释:仅可与 type="text" 配合使用。
总结
readonly代码:<input type="text" name="readonly" readonly="readonly" /> readonly不可编辑,可复制,可选择,可以接收焦点但不能被修改,后台会接收到传值. disabled代码: <input type="text" name="disabled" disabled="disabled" /> disabled不可编辑,不可复制,不可选择,不能接收焦点,后台也不会接收到传值 |
|