A-A+
javascript中input中readonly和disabled区别
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却是可以使用的)。
例子,代码如下:
- <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>
总结:
readonly代码:
- <input type="text" name="readonly" readonly="readonly" />
readonly不可编辑,可复制,可选择,可以接收焦点但不能被修改,后台会接收到传值.
disabled代码:
- <input type="text" name="disabled" disabled="disabled" />
disabled不可编辑,不可复制,不可选择,不能接收焦点,后台也不会接收到传值