Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 5秒后取下一个div_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript 5秒后取下一个div

Javascript 5秒后取下一个div,javascript,jquery,ajax,Javascript,Jquery,Ajax,我有这个AJAX表单: function form(){ var icao = document.getElementById('icao').value; var name = document.getElementById('name').value; var weightempty = document.getElementById('weightempty').value; var weightfull = documen

我有这个AJAX表单:

function form(){

        var icao = document.getElementById('icao').value;
        var name = document.getElementById('name').value;
        var weightempty = document.getElementById('weightempty').value;
        var weightfull = document.getElementById('weightfull').value;
        var cargofull = document.getElementById('cargofull').value;
        var cruisespeed = document.getElementById('cruisespeed').value;
        var range = document.getElementById('range').value;
        var price = document.getElementById('price').value;
        var firstclassseats = document.getElementById('firstclassseats').value;
        var businessclassseats = document.getElementById('businessclassseats').value;
        var economyclassseats = document.getElementById('economyclassseats').value;
        ajax.open("POST","new_aircraft_process.php",true);
        ajax.onreadystatechange=function(){
            if(ajax.readyState==4)
            {
            var respuesta=ajax.responseText;


            document.getElementById('result').innerHTML=ajax.responseText;
            $("#newaircraftdialog").dialog('close');


            refreshTable(function(){$("#loadingdialog").dialog('close');});
            }
        }
    ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    ajax.send("icao="+icao+"&name="+name+"&weightempty="+weightempty+"&weightfull="+weightfull+"&cargofull="+cargofull+"&cruisespeed="+cruisespeed+"&range="+range+"&price="+price+"&firstclassseats="+firstclassseats+"&businessclassseats="+businessclassseats+"&economyclassseats="+economyclassseats);
    $("#loadingdialog").dialog('open');
    }
我想知道的是,当结果显示在result div中时(它是一个写着“Successful Form”的文本),它只显示5秒钟,然后消失。我已经找到了各种方法,但不想删除div。因为如果我想再次制作表单,其结果必须再次显示在div中,并在5秒后消失。

您可以使用
delay()

$('.myDiv').fadeIn(); // Show the div to start.
// All your other code here.
setTimeout(function() { $('.myDiv').fadeOut() }, 5000); // hide the div after we're done
您可以在重新提交表单时删除div并在稍后删除它

ajax.onreadystatechange=function(){
    if(ajax.readyState==4)
    {
        var respuesta=ajax.responseText;


        var $result = $('#result');
        $result.html(ajax.responseText);
        $result.show();
        setTimeout(function() { $result.hide() }, 5000);
        $("#newaircraftdialog").dialog('close');


        refreshTable(function(){$("#loadingdialog").dialog('close');});
    }
}

以后还可以使用它并将其重新附加到DOM

对不起,我没有把它放在匿名函数中。现在应该可以用了,我有点问题。当我想再做一次,没有刷新页面的对话框不工作!我不太明白你的意思。请进一步解释。如果OP希望稍后再次显示div,“remove”是错误的方法。他应该分离或者隐藏它。OP的标题是“5秒后移除一个div”,所以我在5秒后移除了一个div。我更喜欢
$('.myDiv).fadeOut()
尽管其他答案的问题相同:我做表单,一切正常,div被删除了。但是,当我想在其他时间执行表单而不重新加载页面时,AJAX脚本找不到结果div来放置结果。@user1972864,我更新了代码以显示和隐藏您的div。请尝试一下,并告诉我它是否有效。
ajax.onreadystatechange=function(){
    if(ajax.readyState==4)
    {
        var respuesta=ajax.responseText;


        var $result = $('#result');
        $result.html(ajax.responseText);
        $result.show();
        setTimeout(function() { $result.hide() }, 5000);
        $("#newaircraftdialog").dialog('close');


        refreshTable(function(){$("#loadingdialog").dialog('close');});
    }
}