【发布时间】:2021-08-06 01:03:03
【问题描述】:
目前 info、stat 和 foo 元素是隐藏的。当我提交表单时,它不会使它们可见。
如果我在<button onclick="unhide()"></button> 中使用这个 unhide() 函数,它可以正常工作。但它在表单中不起作用。
unhide() 函数如何在提交表单后使这些元素可见?
<style>
#info {
visibility: hidden;
}
#stat {
visibility: hidden;
}
#foo {
visibility: hidden;
}
</style>
<script>
function unhide() {
var x = document.getElementById("info");
var y = document.getElementById("stat");
var z = document.getElementById("foo");
if (x.style.visibility === "hidden" && x.style.visibility === "hidden" && x.style.visibility === "hidden") {
x.style.visibility = "visible";
y.style.visibility = "visible";
z.style.visibility = "visible";
}
else{
x.style.visibility = "hidden";
y.style.visibility = "hidden";
z.style.visibility = "hidden";
}
}
</script>
<form method="GET" onsubmit="unhide()" action="../index.js" class="justify-center flex p-6">
<input class="mt-4 text-lg p-3 text-white rounded-l-md border-white border-2 bg-gray-900 outline-none" type="text" name="search" placeholder="Enter country">
<input class="mt-4 py-3 px-6 font-bold rounded-r-md text-lg cursor-pointer" value="search" id="submit" type="submit">
</form>
【问题讨论】:
-
我觉得你的 if 子句不是很好,(x.style.visibility === "hidden" && x.style.visibility === "hidden" && x.style.visibility == =“隐藏”),是否正确?我认为你必须写 (x.style.visibility === "hidden" && y.style.visibility === "hidden" && z.style.visibility === "hidden")
-
函数在表单外正常执行。功能没有问题。
标签: javascript html css node.js