Javascript 在“确认”对话框上单击“确定”时显示Div
这是我的代码:Javascript 在“确认”对话框上单击“确定”时显示Div,javascript,Javascript,这是我的代码: <form method="GET"> <input type="text" class="form" name="name" placeholder="Your name here!" id="name"> <input type="submit" onclick="return clicked();" value="I'm ready!"> </form> <br> <script> fu
<form method="GET">
<input type="text" class="form" name="name" placeholder="Your name here!" id="name">
<input type="submit" onclick="return clicked();" value="I'm ready!">
</form>
<br>
<script>
function clicked() {
var name = document.getElementById('name').value;
return confirm('Hello ' + name + ', great to see you!');
}
</script>
函数单击(){
var name=document.getElementById('name')。值;
返回确认(“你好”+name+,很高兴见到你!”;
}
当用户单击警报上的“确定”时,是否可以使文本显示(不在警报框中)。此外,当文本出现时,是否可能使表单淡出
谢谢。
<script>
function clicked() {
var name = document.getElementById('name').value;
var r = confirm('Hello ' + name + ', great to see you!');
if (r==true)
{
// Code to fadeOut form comes here:
// jquery:
// $("form").fadeOut();
// Pure JS: ( hides the form with ID "myform" )
// document.getElementById("myform").style.display="none";
// document.getElementById("id of thanks message").style.display="inline";
}
return r; // If you want to stay in this page just return false not r
}
</script>
函数单击(){
var name=document.getElementById('name')。值;
var r=confirm('Hello'+name+',很高兴见到你!');
如果(r==true)
{
//淡出表单的代码如下:
//jquery:
//$(“形式”).fadeOut();
//纯JS:(隐藏ID为“myform”的表单)
//document.getElementById(“myform”).style.display=“无”;
//document.getElementById(“感谢消息的id”).style.display=“inline”;
}
return r;//如果您想留在这个页面,只需返回false而不是r
}
此外,我建议将此功能附加到表单提交而不是按钮点击。因为用户可以通过按Enter键提交表单。将id作为JQuery的处理程序添加到表单中。然后添加一个占位符元素(在本例中是#reply user)向用户输出消息(问候语)。占位符是一种可以绕过警报弹出窗口的方法
<form id="your-form" method="GET">
<input type="text" class="form" name="name" placeholder="Your name here!" id="name">
<input type="submit" onclick="return clicked();" value="I'm ready!">
</form>
<h3 id="reply-user"></h3>
<br>
<script>
function clicked() {
var name = document.getElementById('name').value;
$('#your-form').fadeOut();
$('#reply-user').append('Hello ' + name + ', great to see you!');
}
</script>
函数单击(){
var name=document.getElementById('name')。值;
$(“#您的表单”).fadeOut();
$('reply user').append('Hello'+name+',很高兴见到你!');
}
非常简单,根据您是单击“是”还是单击“否”来确认返回true还是false,
因此,当您得到true时,使表单显示none并将文本放入容器中
Js代码:
function clicked() {
var name = document.getElementById('name').value;
if(confirm('Hello ' + name + ', great to see you!'))
{
document.getElementById('nameDiv').innerHTML = 'Hello ' + name + ', great to see you!';
document.getElementById('mainDiv').style.display = "none";
}
}
Js Fiddle:他没有使用jQuery。你说得对。但问题是确认后的事件,而不是如何淡出。你必须编写自己的淡出函数。我使用了jquery,如果您有jquery,也可以使用。请再次检查编辑后的答案。因为这个“淡出”的东西看起来很复杂,有没有办法让它消失,然后文本出现?我已经用jquery和纯JS更新了我的答案。祝你好运!这似乎是成功的关键。只有一个问题,如果我想在关闭mainDiv后显示另一个表单,我会怎么做?为此,可以使用document.getElementById('yourDiv').style.display=“block”;再次感谢您的学习。很抱歉经常有问题(我对JavaScript很陌生)。如何使id“yourDiv”仅在用户在警报中按ok时显示?这不是问题,请在if块中编写上述代码。您所说的“in if块”是什么意思?