此图片上传脚本在Google Chrome中不起作用,但在Firefox和Internet Explorer中运行良好。请有人帮忙吗?
$("a#picUpload").bind('click', function() {
$(":input[type=file]").click();
});
其次,在选择一张图片并点击打开的对话框上的打开按钮后,我希望在打开对话框卸载后自动启动图片上传,但我无法弄清楚如何执行此操作。上传是ajax。有什么建议吗?感谢。
答案 0 :(得分:0)
我认为第一个问题可以通过在'#'之前的'a'之后引入一个空格来解决。我假设'picUpload'是锚元素的id。在这种情况下,您根本不必使用“a”。只需使用'#picUpload'将click事件绑定到元素即可。我更喜欢第二种方法,你只使用#id来获取该元素的jQuery对象。
$("#picUpload").bind('click', function() {
$(":input[type=file]").click();
});
我还建议您检查表单中是否有与'picUpload'元素具有相同ID的任何其他元素。在这种情况下,事情可能会出错。
要在选择文件后自动开始上传文件,请使用input:file元素的'change'事件。
$('#fileUpload').change(function() {
alert('changed');
//call your ajax function for uploading file
});
要使上述脚本正常工作,表单应如下所示
<form>
<a id='picUpload' href='#'>Upload picture</a>
<input id='fileUpload' type="file"/>
</form>