所以目前我的网站就是这样的;您发布更新并通过iframe将更新添加到数据库中,然后显示在下面的列表中。但问题是,当您单击“提交”时,您编写的文本仍显示在textarea中,因为该网站未完全更新。我曾尝试过“onsubmit”和“onclick”,但在将它添加到数据库之前都删除了textarea的内容,因此它显示一条空信息。
我应该怎么做才能将它延迟一秒钟,或者如何让它等待iframe将数据“发送”到我的PHP脚本?
答案 0 :(得分:1)
如果您唯一的问题是延迟回复,则可以使用给定的setTimeout
向您的onClick
触发setTimeout
功能:
setTimeout(
function() {
alert('hello');
},1250 //in milliseconds
);
答案 1 :(得分:1)
为textarea提供一个ID,并假设iframe是包含textarea的页面的元素,您在iframe页面中已完成以下操作:
<?php
//code should be done after db add
?>
<script>
o = parent.document.getElementById('textareaID');
o.value = '';
</script>
<?php
//the end of code or something else
?>
您可以在jsbin上看到这些演示:
答案 2 :(得分:0)
您可以使用jQuery定义click
或submit
事件,并向您的服务器发送请求。当服务器使用callback
响应时,您可以处理该事件。在callback
中你需要做任何需要做的事情。在这种情况下使用setTimeout
是不必要的黑客攻击。您将设置一个大的时间来等待损害用户体验,或者如果页面响应的时间晚于您的页面意外工作的指定时间。所以,而不是尝试定义一个事件。