让我澄清一下。
我有一个HTML表单,用于在名为contact.php
在服务器端,我在发送电子邮件后在php中有这个
header('Location:contact.php?co=1'); exit();
在客户端(在包含表单的同一文件中)
if ($_GET['co']) {
echo 'We got it!';
}
因此用户知道邮件是否被发送。
我如何清除那条消息,“我们得到了它”?
我想做点像
<input name="mail" type="email" onFocus="cleatThemessage" ><br>
因此当用户点击表单中的字段时,消息就会消失。
由于
答案 0 :(得分:1)
在header('Location:contact.php?co=1'); exit();
之前
添加
$_SESSION['notification'] = "We got it";
改变,
if ($_GET['co']) {
if(isset($_SESSION['notification']) && $_SESSION['notification'] != '') {
echo $_SESSION['notification'];
unset($_SESSION['notification']);
}
}
为了使这个工作,我假设你的表单提交到一个页面说saveContact.php并在插入数据库查询后你将它重定向到contact.php?co = 1,这样$_SESSION['notification'] = 'We got it'
只在插入后执行一次进入数据库查询。
答案 1 :(得分:0)
这可能对您有用:
<?php
if ($_GET['co']) {
echo '<div id="message">We got it!</div>';
}
?>
<input name="mail" type="email" onFocus="document.getElementById('message').innerHTML = '' ;" ><br>
答案 2 :(得分:0)
HTML 的
<input name="mail" type="email" onFocus="clearThemessage(this)" ><br>
的Javascript
function clearTheMessage(element) {
element.value = "";
}
答案 3 :(得分:0)
<?php
if(isset($_GET['co'])){
echo '<p id="gotit">We got it!</p>';
}?>
<input name="mail" type="email" onFocus="removeMessage()" >
<script type="text/javascript">
function removeMessage(){
var el = document.getElementById('gotit');
if(typeof(el) != 'undefined' && el != null){
el.remove();
}
}
</script>