通过脚本调用时FileUpload无法捕获文件名

时间:2018-09-25 12:06:51

标签: javascript asp.net

我有一个FileUpload,当直接单击它时,可以按预期工作。 我不想用户必须单击多次,也不想显示文件名,并且我需要调整按钮的CSS。 所以我有一些脚本,您单击按钮A会触发FileUpload,当它捕获文件名时,它将自动单击按钮B来上传文件。

如果我直接单击FileUpload按钮,则单击按钮B并上传的触发器将起作用。

如果我单击按钮A,它将触发对FileUpload的单击,允许我选择一个文件名,但是它没有捕获控件中的文件名,因此不会触发按钮B的单击。

任何想法都将不胜感激。

<script>
    function UploadMAPFile(fileUpload) {
        if (fileUpload.value != '') {
            document.getElementById("<%=btn_AddMap.ClientID %>").click();
        }
    }
    function SelectMAPFile() {
        document.getElementById("<%=MapUploadControl.ClientID %>").click();
    }
</script>

<asp:FileUpload ID="MapUploadControl" runat="server" CssClass="hiddens"/>

<asp:Button ID="btn_AddMap" runat="server" CssClass="hidden" OnClick="btn_AddMap_Click"/>
<asp:Button ID="btn_SelectAndAddMap" runat="server" CssClass="form_save_button" OnClientClick="SelectMAPFile();"/>

后面的C#代码:

protected void Page_Load(object sender, EventArgs e)
    {
        MapUploadControl.Attributes["onchange"] = "UploadMAPFile(this)";
        btn_SelectAndAddMap.Attributes["onClientClick"] = "SelectMapFile()";
    }

0 个答案:

没有答案