我正在通过另一个脚本动态设置SecretAttribute的值,但此刻我很难将Name输入字段设置为readonly
。
尝试通过SecretAttribute和SecretElement设置getElementByID
,但没有骰子。
<input name="SecretAttribute" id="SecretAttribute" value="Y" type="checkbox" checked/>
<html>
<head>
<title>Demo Title</title>
<script type="text/javascript">
var SecretElement = document.getElementById('SecretAttribute');\
if (document.getElementById("SecretAttribute").checked;) {
function DataCheck() {
document.getElementById('Name').readOnly = true;
}
}
</script>
</head>
<body onload="DataCheck()">
Demo6.1<br>
Name: <input type="text" id="Name" name="Name"><br>
</body>
</html>
答案 0 :(得分:2)
函数调用位于if语句内部。将if条件放入通话中
function DataCheck() {
if(document.getElementById("SecretAttribute").checked)
document.getElementById('Name').readOnly = true;
}
var SecretElement = document.getElementById('SecretAttribute');
<input name="SecretAttribute" id="SecretAttribute" value="Y" type="checkbox" checked/>
<html>
<head>
<title>Demo Title</title>
</head>
<body onload="DataCheck()">
Demo6.1<br>
Name: <input type="text" id="Name" name="Name" value="You can't edit this"><br>
</body>
</html>
答案 1 :(得分:0)
如果您使用的是较旧的浏览器,请尝试使用setAttribute,类似...
var SecretElement = document.getElementById('SecretAttribute');
if (SecretElement.checked) {
document.getElementById('Name').setAttribute("readonly","readonly");
}