热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

选择文件后立即POST-POSTimmediatelyafterselectafile

IhavethefollowingHTMLcode我有以下HTML代码<formactionscriptupload_key.pymethodPOSTenc

I have the following HTML code

我有以下HTML代码

 
    Key filename:  
     
 

which gives me the following stuff.

这给了我以下的东西。

alt text

I was wondering

我在想

  1. How I can use Javascript, to eliminate the need of Submit button. That's mean, once I Choose File, the selected file will be uploaded immediately?
  2. 我如何使用Javascript,以消除提交按钮的需要。这意味着,一旦我选择文件,所选文件将立即上传?
  3. How can I make sure the field to display selected file name is long enough, so that ... will not be shown?
  4. 如何确保显示所选文件名的字段足够长,以便...不会显示?

4 个解决方案

#1


36  

To submit it immediately, just do this:

要立即提交,请执行以下操作:


If you are using JQuery:

如果您使用的是JQuery:

$("input[name='file_1']").change(function() { this.form.submit(); });

About your other questions:

关于您的其他问题:

1) There are many methods out there... for example:

1)有很多方法......例如:

http://valums.com/ajax-upload/

http://valums.com/ajax-upload/

http://www.webtoolkit.info/ajax-file-upload.html

http://www.webtoolkit.info/ajax-file-upload.html

(and many more. Just google for: "Ajax file upload" or "iframe file upload")

(以及更多。仅谷歌:“Ajax文件上传”或“iframe文件上传”)

2) Don't worry about the width of the field. As you don't know how long can it be the path, it would never be long enough (i think). Also browsers may display it very different. For example Safari or Chrome show it very different from Firefox or IE. Just use the default length or the one that looks better with your design.

2)不要担心场地的宽度。因为你不知道这条路有多长,所以它永远不够长(我想)。浏览器也可能显示它非常不同。例如,Safari或Chrome显示它与Firefox或IE非常不同。只需使用默认长度或与您的设计看起来更好的长度。

#2


2  

For the first one:

对于第一个:


I'm not sure about making the field wide enough though. Sometimes CSS is crippled on file upload fields to prevent exploits.

我不确定这个领域是否足够广阔。有时CSS在文件上载字段中被削弱以防止漏洞利用。

#3


0  

Rough guess at what you want - when the text field changes it will trigger the form submission

粗略猜测你想要什么 - 当文本字段改变时它将触发表单提交

$('.target').change(function() {
  document.forms["myform"].submit();
});

Edit: Sorry, I've used jQuery...

编辑:对不起,我用过jQuery ...

If you submit the form onchange, you won't notice the field get populated and therefore should not need to change the text length. If you desire to, I would get the character count of the string in the field and then apply a size attribute to the input

如果您提交表格onchange,您将不会注意到该字段已填充,因此不需要更改文本长度。如果你愿意,我会在字段中获得字符串的字符数,然后将size属性应用于输入

mylength = document.getElementById('myfield').value
document.getElementById('myfield').size = mylength;

#4


0  

In case you don't want or need to submit the whole form on file input select, then you can do this to send only the file:

如果您不想或不需要在文件输入选择上提交整个表单,那么您可以这样做只发送文件:

$(document).ready(function (e) {
	$("#uploadImage").on('change',(function(e) {
		// append file input to form data
		var fileInput = document.getElementById('uploadImage');
		var file = fileInput.files[0];
		var formData = new FormData();
		formData.append('uploadImage', file);

		$.ajax({
			url: "ajaxupload.php",
			type: "POST",
			data: formData,
			contentType: false,
			cache: false,
			processData:false,
			success: function(data) {
				if(data=='invalid') {
					// invalid file format.
					$("#err").html("Invalid File !").fadeIn();
				}

				else {
					// view uploaded file.
					$("#preview").html(data).fadeIn();
					$("#form")[0].reset();
				}
			},
			error: function(e) {
				$("#err").html(e).fadeIn();
			}
		});
	}));
});

  
  
  
  

So first you get the input file element with getElementById(), then you append to FormData, then send the FormData as data in your ajax call. Do the server side upload processing in ajaxupload.php.

首先,您使用getElementById()获取输入文件元素,然后附加到FormData,然后将FormData作为数据发送到ajax调用中。在ajaxupload.php中进行服务器端上传处理。


推荐阅读
  • 目录实现效果:实现环境实现方法一:基本思路主要代码JavaScript代码总结方法二主要代码总结方法三基本思路主要代码JavaScriptHTML总结实 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 个人学习使用:谨慎参考1Client类importcom.thoughtworks.gauge.Step;importcom.thoughtworks.gauge.T ... [详细]
  • springmvc学习笔记(十):控制器业务方法中通过注解实现封装Javabean接收表单提交的数据
    本文介绍了在springmvc学习笔记系列的第十篇中,控制器的业务方法中如何通过注解实现封装Javabean来接收表单提交的数据。同时还讨论了当有多个注册表单且字段完全相同时,如何将其交给同一个控制器处理。 ... [详细]
  • Ihavethefollowingonhtml我在html上有以下内容<html><head><scriptsrc..3003_Tes ... [详细]
  • 本文介绍了Swing组件的用法,重点讲解了图标接口的定义和创建方法。图标接口用来将图标与各种组件相关联,可以是简单的绘画或使用磁盘上的GIF格式图像。文章详细介绍了图标接口的属性和绘制方法,并给出了一个菱形图标的实现示例。该示例可以配置图标的尺寸、颜色和填充状态。 ... [详细]
  • 解决文件名过长下载失败问题的jQuery方案
    本文介绍了使用jQuery解决文件名过长导致下载失败的问题。原方案中存在文件名部分丢失的问题,通过动态生成隐藏域表单并提交的方式来解决。详细的解决方案和代码示例在文章中给出。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • Python语法上的区别及注意事项
    本文介绍了Python2x和Python3x在语法上的区别,包括print语句的变化、除法运算结果的不同、raw_input函数的替代、class写法的变化等。同时还介绍了Python脚本的解释程序的指定方法,以及在不同版本的Python中如何执行脚本。对于想要学习Python的人来说,本文提供了一些注意事项和技巧。 ... [详细]
  • javascript  – 概述在Firefox上无法正常工作
    我试图提出一些自定义大纲,以达到一些Web可访问性建议.但我不能用Firefox制作.这就是它在Chrome上的外观:而那个图标实际上是一个锚点.在Firefox上,它只概述了整个 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 前景:当UI一个查询条件为多项选择,或录入多个条件的时候,比如查询所有名称里面包含以下动态条件,需要模糊查询里面每一项时比如是这样一个数组条件:newstring[]{兴业银行, ... [详细]
  • FineReport平台数据分析图表显示部分系列接口的应用场景和实现思路
    本文介绍了FineReport平台数据分析图表显示部分系列接口的应用场景和实现思路。当图表系列较多时,用户希望可以自己设置哪些系列显示,哪些系列不显示。通过调用FR.Chart.WebUtils.getChart("chartID").getChartWithIndex(chartIndex).setSeriesVisible()接口,可以获取需要显示的系列图表对象,并在表单中显示这些系列。本文以决策报表为例,详细介绍了实现方法,并给出了示例。 ... [详细]
  • IjustinheritedsomewebpageswhichusesMooTools.IneverusedMooTools.NowIneedtoaddsomef ... [详细]
  • 在JavaScript中,函数没有重载的概念,如果声明了多个重名的函数,不管函数的形参个数是否一样,只有最后一个有效。如果调用函数时传入的参数个数与函数定义时的参数个数不符,会出现不同的情况。函数调用时,传入的参数个数少于函数定义时的参数个数,未传入的参数会被当做undefined处理,可能会导致错误。而传入的参数个数多于函数定义时的参数个数,多余的参数不会被使用,但不会报错。 ... [详细]
author-avatar
外星人源码商城
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有