Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/442.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 提交表单时是否显示图像?_Javascript - Fatal编程技术网

Javascript 提交表单时是否显示图像?

Javascript 提交表单时是否显示图像?,javascript,Javascript,使用Javascript,我希望在用户点击表单上的submit时显示一个正在工作/加载的图像。该表单用于上传视频,因此文件上传可能需要一段时间。文件上传完成后,页面将重新加载,这样加载的图像就不需要再可见了 有人能帮我吗 <form method="POST" enctype="multipart/form-data" action=""> <input type="hidden" name="MAX_FILE_SIZE" value="5120000" /> <

使用Javascript,我希望在用户点击表单上的submit时显示一个正在工作/加载的图像。该表单用于上传视频,因此文件上传可能需要一段时间。文件上传完成后,页面将重新加载,这样加载的图像就不需要再可见了

有人能帮我吗

<form method="POST" enctype="multipart/form-data" action=""> 
<input type="hidden" name="MAX_FILE_SIZE" value="5120000" /> 
<input type="hidden" name="upload" value="yes"> 

First Name: <input type="text" name="firstname"><br> 

Email: <input type="text" name="email"><br> 

Email Confirmation: <input type="text" name="email2"><br> 

Video Title: <input type="text" name="title"><br> 

Video Description: <input type="text" name="description"><br> 

Video to upload: <input type="file" name="uploadedfile"><br> 

Terms: <input type="checkbox" name="terms"> Must be checked to accept our terms of service.<br><br> 

<input type="submit" value="Upload Video"> 

</form> 

名字:
电子邮件:
电子邮件确认:
视频标题:
视频描述:
要上传的视频:
条款:必须检查以接受我们的服务条款。


使用jquery:您可以在document.ready中使用如下内容

$("form").submit(function() { //you can assign id to your form and used that id instead of form
$("#iamgeid").show();
return true;
});

最好的方法是使用AJAX调用来完成整个过程

将显示为“无”的图像放置在所需位置,然后执行以下小操作:

var d = document;
var demoInterval;
$("form").submit(function() {
    $("img").show();
    demoInterval = setInterval(intervalFunc, 1000);
});
function intervalFunc()
{
    if(d.ready) // finished uploading video
    {
        window.clearInterval(demoInterval);
        $("img").hide();
    }
}

通常,我们在提交表单后无法显示加载图像,因为当我们最初提交表单时,表单会向服务器发送请求,而加载只是因为上传后的服务器响应。服务器正在加载时,加载图像将不会显示动画。

要显示加载图像,我们必须做一些技巧。
1.我们不应该在同一窗口中提交表单,而是必须将表单发布到iframe。这可以通过将目标属性添加到表单标记中来完成。



......................
......................




2.当服务器在iframe中加载时,我们必须添加脚本以显示图像。



函数showimage(){
document.getElementById('form-container').style.display='none';
document.getElementById('image-container').style.display='block';
}


3.上传文件后还要添加脚本。



您的文件上传
代码位于此处


最后,打印脚本以重新加载父窗口或在父窗口中调用函数。

我将其更改为
$(document).ready(函数(){$(“表单”).submit(函数(){//您可以为表单分配id,并使用该id代替表单$(“#imageid”).show();return true;;})现在可以工作了