gpt4 book ai didi

javascript - 使用 PrototypeJs 方法上传文件 $ ('formId' ).request()

转载 作者:行者123 更新时间:2023-11-30 13:40:49 24 4
gpt4 key购买 nike

我尝试使用 PrototypeJs 请求方法上传文件,但失败了。

我正在使用的代码,

<form enctype="multipart/form-data" id="form1" runat="server" action="ajax.aspx"
onsubmit="upMe(this);return false;" >

如果我返回 true 而不是 false,文件将被上传,但这会产生我不想要的回发,因为我正在使用来自 PrototypeJs 的方法请求。

upMe函数非常简单,

function upMe(frmEle) {
$(frmEle).request({
method: 'post',
parameters: {},
onComplete: function() { alert('file has been uploaded'); }
});
}

以上述方式上传文件我缺少什么?

非常感谢。

最佳答案

问题是您使用 AJAX 而不是正常的提交方法来发布表单。这将需要 JavaScript 读取文件并将其包含在提交中,但正如您可以想象的那样,脚本从客户端读取本地文件的能力会带来相当大的安全风险:-)

这个问题的答案是使用一个隐藏的 <iframe>元素,并向其提交请求。您可以将事件处理程序注册到 iframe 的 onload 事件以进行 oncomplete 样式回调。

http://www.openjs.com/articles/ajax/ajax_file_upload/

关于javascript - 使用 PrototypeJs 方法上传文件 $ ('formId' ).request(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2352425/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com