我是 webdesign/php 和 javascript 的新手,我遇到了问题。请看这段代码:
<script type="text/javascript">
<!--
function thanksDiv(){
document.getElementById("myThanksDiv").style.display ='block';
}
function hideDiv(id){
document.getElementById(id).style.display='none';
}
//-->
</script>
<form id="contacts-form" method="post" action="email.php" target="myiframe">
<fieldset>
<div class="alignright"><a href="#" onClick="document.getElementById('contacts-form').submit()">Send Your Message!</a></div>
</fieldset>
</form>
<iframe name="myiframe" id="myiframe" src="" width=1 height=1 style="visibility:hidden;position:absolute;"></iframe>
<div id="myThanksDiv" style="width:200px;height:150px;position:absolute;left:50%; top:20px; margin-left:-100px;border:1px solid black; background:#fff;display:none;padding:20px;">Thanks! <br />Your message was sent.</div>
在 email.php 中:
echo '<script type="text/javascript">'
, thanksDiv();'
, '</script>';
?>
这个想法是,当我点击“发送您的消息”时,我应该会看到一个框,上面写着“消息已发送”,但我没有。
如果我没有通过 email.php 页面,我只是从表单提交链接中调用thanksDiv,它可以工作。知道为什么吗?