我想知道为什么我的脚本没有使用id值吗?
我在test.js命名的单个文件中的单独文件夹中使用了此代码 这是我的起始代码。
var myInput = document.getElementById("newPass");
var confInput = document.getElementById("confpsw");
var letter = document.getElementById("letter");
var capital = document.getElementById("capital");
var number = document.getElementById("number");
var length = document.getElementById("length");
var special = document.getElementById("special");
document.getElementById("Button").disabled = true;
我的查看代码是..
<button id="Button" class="btn btn-lg btn-primary btn-block btn-signin" type="submit">Submit</button>
我收到这样的错误...
未捕获的TypeError:无法将属性“禁用”设置为null
为什么我的脚本无法在cshtml中工作?
答案 0 :(得分:1)
似乎代码在DOM准备就绪之前就在运行。尝试使用DOMContentLoaded
。
当初始HTML文档已完全加载并解析而无需等待样式表,图像和子帧完成加载时,将触发DOMContentLoaded事件。
document.addEventListener("DOMContentLoaded", function(event) {
document.getElementById("Button").disabled = true;
});
答案 1 :(得分:1)
检查以下代码可能会对您有所帮助。因为您需要在“文档内容已加载”事件上附加事件许可方。
SELECT
stock_levels.id,
stock_levels.part_number,
stock_levels.minimum_stock,
stock_levels.maximum_stock,
COUNT(automatic_transmission_jobs.id) AS in_stock,
in_stock - maximum_stock AS levels
FROM stock_levels
LEFT OUTER JOIN automatic_transmission_jobs USING (part_number)
WHERE
automatic_trasmission_jobs.test_result != 'Not Tested'
AND automatic_trasmission_jobs.status !='pwa'
GROUP BY stock_levels.id;
document.addEventListener("DOMContentLoaded", function(event) {
document.getElementById("Button").disabled = true;
});
.centered {
color: black;
width:100px;
height:30px;
position: fixed;
top: 50%;
left: 50%;
/* bring your own prefixes */
transform: translate(-50%, -50%);
}
答案 2 :(得分:1)
与cshtml无关。
如果您将行添加到标头中以获取Dom元素,则由于DOM尚未加载,因此该行将无法工作。
将javascript放在正文(脚本或代码)的末尾,或在浏览器加载DOM后使用DOMEvent运行JS。
在JS中:https://developer.mozilla.org/fr/docs/Web/Events/load
在JQuery中:https://api.jquery.com/ready/
答案 3 :(得分:-1)
您是否首先加载了DOM?
window.addEventListener('load', () => {
document.querySelector('#Button').disabled = true;
});
答案 4 :(得分:-1)
似乎正在为我工作。在下面找到代码。这是一个简单的html文件。
<html>
<head>
<script type="text/javascript">
function Clicked(){
document.getElementById("Button").disabled = true;
}
</script>
</head>
<body>
<button id="Button" class="btn btn-lg btn-primary btn-block btn-signin" type="submit">Submit</button>
<button type="button" OnClick="Clicked()">Click Me!</button>
</body>
</html>