alert(window.onload); -6ren">
gpt4 book ai didi

javascript - window.onload 函数没有在页面上被调用

转载 作者:行者123 更新时间:2023-12-01 01:51:36 24 4
gpt4 key购买 nike

我的代码如下所示:

xyz.html

<!DOCTYPE html>
<html>

<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Status</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>

<body>
<div style="width: 300px;padding: 10px;margin: 0 auto;background: #f2f2f2;">
<form name="Form">
<input type="hidden" name="Status" value="<?php echo $_POST['Status'] ?>" />
</form>

<script type="text/javascript">
alert(window.onload);
window.onload = function() {
var xhr = new XMLHttpRequest();
xhr.open('POST', 'http://api.com');
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xhr.onload = function() {
if (xhr.status === 200) {
var apiresponse = JSON.parse(xhr.response);
console.log(apiresponse);
if (apiresponse.status == "200") {
document.getElementById('response').innerHTML = apiresponse.message + '<br/> Press back button to continue in App.';
} else {
document.getElementById('response').innerHTML = JSON.stringify(apiresponse);
}
} else {
document.getElementById('response').innerHTML = JSON.stringify(xhr);
}
};
var elements = document.forms['Form'].elements;
let formBody = [];
for (var i = 0, element; element = elements[i++];) {
let encodedKey = encodeURIComponent(element.name);
let encodedValue = encodeURIComponent(element.value);
formBody.push(encodedKey + "=" + encodedValue);
}
formBody = formBody.join("&");
document.getElementById('request').innerHTML = formBody;
xhr.send(formBody);
}
</script>
</body>

</html>

当我运行上面的代码时,在 alert 方法中,我得到 null 值及其下面的函数,用 window.onload = function() 根本没有被调用。那么是否需要包含任何内容才能完成它。

最佳答案

当您调用 alert(window.onload) 时,它为 null,因为您尚未为 window.onload 分配函数。您的警报证明不了什么。

为了进行完整性检查,请在 函数中的 var xhr = new XMLHttpRequest(); 行上方添加代码 alert('hello world'); 您绑定(bind)到window.onload。您可能会发现您的函数正在被调用,但其行为并未按您的预期运行,因此您认为您的函数没有在 window.onload 上调用,但实际上是这样。

关于javascript - window.onload 函数没有在页面上被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51453634/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com