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

Javascript
一个短小精悍使用的对象化QQ菜单
用数据岛生成翻页程序
轻松实现删除确认
IE5中用JavaScript跨frame加option问题
IE6无提示关闭窗口,不是利用activeX
下拉框联动
用dhtml做了一个密码管理器
面向对象的JavaScript编程
网 络 病 毒 与 防 范 措 施
破解网页禁止鼠标右键的技巧
JS编写的俄罗斯方块
通过代码改变客户端所显示的语言类型
欢迎精灵
事件处理函数OnEnter OnExit 使用一例
称三次从12球中找出唯一但不知轻重的球
VML实现的饼图(JavaScript类封装)
搜索gb2312汉字在网上的频率
真正的 用JS 做的 loading
Vml:应用阿基米德算法在网页制作动画,原程+注释
贴一例:当所有图片下载完毕时,然后显示网页(有进度)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 130 ::
收藏到网摘: 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>