5

我想知道检查输入 type="field" 字段是否可供用户使用的最佳方法是什么?

至少 iPhone 和 iPad 不允许用户上传文件,而不是使用后端代码检查用户代理,我想听听您认为最简约的解决方案是什么?

目的是检查文件上传是否可用,如果没有,设置 display:none; 对于包含表单的整个 div。

这可以只用css完成吗?jQuery?

我更喜欢一个不明确不检查 if(iOS) 而是进行更通用检查的解决方案。

先感谢您!

4

1 回答 1

12

到目前为止,处理这个问题的最优雅的方法可能是使用Modernizr,它在其最新版本中允许您使用以下 JS 语句测试文件输入支持:

if(Modernizr.fileinput) {
    //file input available!
} else {
    //No file input :(
}

或者,如果您不希望将 Modernizr 包含在您的项目中,则有一种简单的方法来测试它,它只涉及 3 行代码:

var elem = document.createElement('input');
elem.type = 'file';
return !elem.disabled;

this SO answer中所述。

于 2012-08-07T10:26:14.760 回答