当前位置: 首页 > 图文教程 > 网络编程 > Javascript > jquery 将disabled的元素置为enabled的三种方法

Javascript
javascript 关闭IE6、IE7
javascript substr和substring用法比较
javascript 强制弹出窗口代码-跨拦截
javascript 获取多条数据(模拟ajax获取数据)
js 分页代码带切换效果
选择指定数量后checkbox不可选(变灰)javascript代码
javascript 图片上传预览-兼容标准
jquery 截取字符串的实现
jquery tagname 取得方法
scrollTop 用法说明
javascript 倒排序方法
慎用 somefunction.prototype 分析
几个常用的JavaScript字符串处理函数 - split()、join()、substring()和indexOf()
javascript 根据歌名获取播放地址和歌词内容
js在Firefox与IE中对DOM对像的引用的比较
Javascript String对象扩展HTML编码和解码的方法
javascript HTMLEncode HTMLDecode的完整实例(兼容ie和火狐)
Javascript 获取字符串字节数的多种方法
javascript 常用方法总结
cookie丢失问题(认证失效) Authentication (用户验证信息)也会丢失

Javascript 中的 jquery 将disabled的元素置为enabled的三种方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 203 ::
收藏到网摘: n/a

在jquery中可以通过jqueryObj.attr("disabled","disabled")将页面中某个元素置为不可编辑或触发状态,但是在jquery的API reference中并没说明怎么将页面置为disable的元素重新置为可触发或可编辑的。 这里发现可以采用三种的变通方法将置为disabled的元素状态改为enabled。
第一种:改变disabled的boolean状态,具体代码及解释如下:
复制代码 代码如下:

$("button:eq(2)").click(function(){
var text2=$("input:text:eq(2)");
if(text2.attr("disabled")==false){
//通过设置disabled的boolean属性将第三个text输入框disabled属性置为true
text2.attr("disabled",true);
}else{
//通过将第三个text输入框disabled属性置为false来移除disabled属性
text2.attr("disabled",false);
}
});

第二种:移除disabled属性,具体代码及解释如下:
复制代码 代码如下:

$("button:eq(1)").click(function(){
var text2=$("input:text:eq(1)");
if(text2.attr("disabled")==false){
//通过设置disabled的值将第二个text输入框置为disabled
text2.attr("disabled","disabled");
}else{
//通过移除的方式将第二个text输入框的disable属性删除
text2.removeAttr("disabled");
}
});

第三种:改变disabled的值,具体代码及解释如下:
复制代码 代码如下:

$("button:eq(0)").click(function(){
var text1=$("input:text:eq(0)");
if(text1.attr("disabled")==""){
// 或者text1.attr("disabled")==false
//通过设置disabled的值将第一个text输入框置为disabled
text1.attr("disabled","disabled");
}else{
//通过覆盖的方式将第一个text输入框中的disabled属性清除掉
text1.attr("disabled","");
}
});

完整的示例代码如下(已测试通过):
复制代码 代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head> <script src="jquery的路径引入就行了"></script>
<script type="text/javascript"><!--
$(document).ready(function () {
$("button:eq(0)").click(function () {
var text1 = $("input:text:eq(0)");
if (text1.attr("disabled") == "") {
// 或者text1.attr("disabled")==false
//通过设置disabled的值将第一个text输入框置为disabled
text1.attr("disabled", "disabled");
} else {
//通过覆盖的方式将第一个text输入框中的disabled属性清除掉
text1.attr("disabled", "");
}
});
$("button:eq(1)").click(function () {
var text2 = $("input:text:eq(1)");
if (text2.attr("disabled") == false) {
//通过设置disabled的值将第二个text输入框置为disabled
text2.attr("disabled", "disabled");
} else {
//通过移除的方式将第二个text输入框的disable属性删除
text2.removeAttr("disabled");
}
});
$("button:eq(2)").click(function () {
var text2 = $("input:text:eq(2)");
if (text2.attr("disabled") == false) {
//通过设置disabled的boolean属性将第三个text输入框disabled属性置为true
text2.attr("disabled", true);
} else {
//通过将第三个text输入框disabled属性置为false来移除disabled属性
text2.attr("disabled", false);
}
});
});
// --></script>
</head>
<body>
<button>disabledNull</button>
<input type="text" value="input something into me!" size="40"/>
<br/>
<button>disabledRemove</button>
<input type="text" value="input something into me!" size="40"/>
<br/>
<button>disabledState</button>
<input type="text" value="input something into me!" size="40"/>
</body>
</html>