1

我有以下 HTML:

<form method="post" action="/link" style="position:absolute; left:-1000px;">

    <input type="file" name="gameUpload" id="gameUpload" /> 

</form>

我正在尝试将 HTML 中的上传功能集成到统一中。

这个想法是当在统一引擎中单击一个按钮时,它将调用一个 javascript 函数,并且 js 函数将触发对文件输入元素的单击。

这在 Firefox 和 IE10、IE9 和 IE8 中运行良好。但它不适用于 Chrome 和 Safari。

JS代码:

function uploadImage(){

jQuery("#gameUpload").trigger("click"); 

}

我尝试了一些文本的“跨度”,并尝试在单击该文本时触发文件输入的单击,效果很好。

另外,我做了以下检查是否触发了点击:

 jQuery("#gameUpload").unbind("click").bind("click",function(){
    alert("I am open");
 });

显然,点击被触发,因为我收到警报但文件对话框没有打开。

4

2 回答 2

0

我不熟悉 Unity 中的 HTML,但我认为您不需要 JS。

只包括<input type="file" name="gameUpload" id="gameUpload" /> 应该允许浏览器打开一个对话窗口。

于 2013-07-16T23:36:39.260 回答
0

使用 jQuery,只需执行以下操作:

$('#imageUpload').click();
// or get the HTMLElement
$('#imageUpload').get(0).click();

仅使用 html(我们知道,带有 for 属性的标签将关注表单元素的默认操作。)

<label for="imageUpload">Upload File!</label>
<input id="imageUpload" type="file" style="display:none"/>
于 2016-08-29T14:40:13.873 回答