document.getElementById后面不能使用.readonly=false吗

我想把输入框的readonly=true改成false,

楼主最好发一个简单的测试代码出来,没设置成功和你的代码有关,如js脚本没在onload事件中执行并且放在要操作的dom对象上了导致获取不到dom导致为null无法设置readOnly属性。

用js设置input的readonly属性是区分大小写的,dom.readOnly=true/false,不能写dom.readonly,这个和直接在input中添加readonly属性不一样,html属性不区分大小写

document.getElementById这个函数是获取DOM标签的。

document.getElementById("test").readOnly=false;

readOnly要大写

在全局环境下的代码是在页面解析阶段从上到下一边解析一边执行的,这时处于代码下面的页面元素还没有解析完,访问不到。
要把script放在页面body标签的最下面,或者使用window.onload事件(页面解析完成后触发)才可以。
 

可以设置 .disabled = true

<!doctype html>
<html lang="en">
<head>
	<meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
	<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
	<title> 页面名称 </title>
</head>
<body>
<input type="text" id="t" value="123" readonly />
<input type="button" value="改变" onclick="fun();" />
<script type="text/javascript">
	function fun() {
		document.getElementById("t").readOnly=false;  //  O 是大写
	}
</script>
</body>
</html>

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632