-1

我们已经更新了一个客户网站,其中有一个工作用户的文件上传,它是用 YAHOO 实现的!连接器。

当我们更改前端时,我们切换到 HTML5。现在上传不再起作用了。

我检查并发现表单没有multipart/form-data设置正确的enctype(),所以帖子中没有上传文件,只是文件名。

但它在以前的版本中有效。

我检查了雅虎的代码!连接器(connector-debug.js)并发现它试图将表单的enctype设置为适当的值multipart/form-data,但没有上传文件(我在Firefox的'Net'寄存器中检查了它)。

我的问题:
HTML5 不再允许设置表单的 enctype 了吗?

编辑

没有人试图回答我的问题。它是用粗体字写的


http://developer.yahoo.com/yui/docs/connection.js.html

uploadEncoding = 'multipart/form-data'  
// ...  
this._formNode.setAttribute('enctype', uploadEncoding); // Line: 1181  
4

2 回答 2

0

我不确定您是如何实施的,但就Yahoo API我们必须检查用户代理而言。

if(YAHOO.env.ua.ie){
    // IE does not respect property enctype for HTML forms.
    // Instead it uses the property - "encoding".
    this._formNode.setAttribute('encoding', uploadEncoding);
} else {
    this._formNode.setAttribute('enctype', uploadEncoding);
}
于 2013-04-17T10:18:49.287 回答
0

试试这个:

this._formNode.setAttribute("enctype", "multipart/form-data");

希望这可以帮助...

于 2013-04-16T13:50:02.027 回答