我可能离题很远,但我正在尝试自学 JS,并且在调用函数并将其与 HTML 相关联的正确方法方面遇到问题。 我不确定我的密码功能是否正确。 非常感谢任何帮助或迷你类(class)
<body>
<div class="header">
<h1>Password Generator</h1>
</div>
<div class="viewer">
<p id="view">test</p>
</div>
<div class="content">
<button onclick="generate();">Generate</button>
</div>
<div class="footer">
<p></p>
</div>
<script src="c:\tesweb\testjs.js"></script>
</body>
function password(){
var retVal = "";
var chars = "abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ#@$&!?";
var length = 8;
for (var i = 0, n = chars.length; i < length; i++) {
retVal += chars.charAt(Math.Floor(Math.random() * n));
}
return x = retVal;
}
function generate() {
document.getElementById("view").innerHTML = x;
}
最佳答案
您不需要返回该值,因为它不会对其执行任何操作。如果您正在计算某些内容,并且需要运行函数来获取值,您就会返回。为此,您只需使用retVal
来设置view
的innerHTML。看看我的片段以获得答案。 :)
function generate() {
var length = 8,
charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",
retVal = "";
for (var i = 0, n = charset.length; i < length; ++i) {
retVal += charset.charAt(Math.floor(Math.random() * n));
}
// After it's done, you just set the innerHTML of whatever element you want to display it
document.getElementById("view").innerHTML = retVal;
}
<div class="header">
<h1>Password Generator</h1>
</div>
<div class="viewer">
<p id="view">test</p>
</div>
<div class="content">
<button onclick="generate();">Generate</button>
</div>
<div class="footer">
<p></p>
</div>
关于javascript - 如何从 JS 调用函数到 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61492925/