iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >jQuery和HTML对某个标签设置只读或者禁用属性的方式
  • 204
分享到

jQuery和HTML对某个标签设置只读或者禁用属性的方式

摘要

目录1 Jquery中只读和禁用1.1 jquery 设置readonly属性1.2 jquery 设置disabled属性1.3 jquery动态添加文本框的readonly只读属

1 jQuery中只读和禁用

1.1 jquery 设置readonly属性

$('input').attr("readonly","readonly")//将input元素设置为readonly
$('input').removeAttr("readonly");//去除input元素的readonly属性
  
if($('input').attr("readonly")==true)//判断input元素是否已经设置了readonly属性

例,对于为元素设置readonly属性和取消readonly属性的方法

$('input').attr("readonly",true)//将input元素设置为readonly
$('input').attr("readonly",false)//去除input元素的readonly属性
 
$('input').attr("readonly","readonly")//将input元素设置为readonly
$('input').attr("readonly","")//去除input元素的readonly属性

1.2 jquery 设置disabled属性

$('input').attr("disabled","disabled")//将input元素设置为disabled
$('input').removeAttr("disabled");//去除input元素的disabled属性
  
if($('input').attr("disabled")==true)//判断input元素是否已经设置了disabled属性

例,对于为元素设置disabled属性和取消disabled属性的方法

$('input').attr("disabled",true)//将input元素设置为disabled
$('input').attr("disabled",false)//去除input元素的disabled属性
 
$('input').attr("disabled","disabled")//将input元素设置为disabled
$('input').attr("disabled","")//去除input元素的disabled属性

1.3 jquery动态添加文本框的readonly只读属性

<input id="id" type="text"  />
 
 $("#id").attr({"readonly":"readonly"}); //添加readonly属性 & $("#ID").attr({ readonly: 'true' });
 $("#id").removeAttr("readonly");    //去除readonly属性
);

注意:

disabled和readonly这两个属性有一些共同之处,比如都设为true,则fORM属性将不能被编辑,往往在写js代码的时候容易混合使用这两个属性,其实他们之间是有一定区别的:

如果一个输入项的disabled设为true,则该表单输入项不能获取焦点,用户的所有操作(鼠标点击和键盘输入等)对该输入项都无效,最重要的一点是当提交表单时,这个表单输入项将不会被提交。

而readonly只是针对文本输入框这类可以输入文本的输入项,如果设为true,用户只是不能编辑对应的文本,但是仍然可以聚焦焦点,并且在提交表单的时候,该输入项会作为form的一项提交。

2 HTML中只读和禁用

有时候,我们希望表单中的文本框是只读的,让用户不能修改其中的信息,如使<input type="text" name="input1" value="中国">的内容,中国两个字不可以修改。

实现的方式归纳一下,有如下几种。 

方法1

  • οnfοcus=this.blur() 当鼠标放不上就离开焦点
<input type="text" name="input1" value="中国" onfocus=this.blur()> 

方法2

  • readonly 
<input type="text" name="input1" value="中国" readonly> 
<input type="text" name="input1" value="中国" readonly="true"> 

方法3 

  • disabled 
<input type="text" name="input1" value="中国" disabled="true">

完整的例子:

<input name="ly_qq" 
type="text" tabindex="2" 
onMouseOver="this.className='input_1'" 
onMouseOut="this.className='input_2'" 
value="123456789" disabled="true" readOnly="true" /> 
  • disabled="true"此果文字会变成灰色,不可编辑,disabled="disabled"这样定义之后被禁用的 input 元素既不可用,也不可点击
  • readOnly="true" 文字不会变色,也是不可编辑的,readonly="readonly"只读字段是不能修改的。不过,用户仍然可以使用 tab 键切换到该字段,还可以选中或拷贝其文本

CSS屏蔽输入:

<input style="ime-mode: disabled">

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: jQuery和HTML对某个标签设置只读或者禁用属性的方式

本文链接: https://www.lsjlt.com/news/197750.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作