0

我一直在努力将 FILE 输入对象添加到我的一个 Intranet 网页上的表单中。我看到了这篇文章(HTML <input type='file'> File Selection Event)并想知道这是否就是为什么即使我在标签中链接了一个 [onSubmit] 处理程序,只要我添加了对象,它就不再触发表单级别的 onSubmit 事件。有没有办法将它们联系在一起,这样我仍然可以在访问处理程序 URL 之前验证同一表单上的其他输入对象?我需要它才能在 IE8 和 Chrome 20+ 中工作。任何帮助将不胜感激。

Javascript:

function CheckForm(theForm) {

    var formName = "form1";
    var formx = document.getElementById(formName);

    if (formx.appname.value == "") {
        alert("Please enter the \"APPLICATION NAME\"...");
        formx.appname.focus();
        return(false);
    }

    if (formx.vendor.value == "") {
        alert("Please enter the \"VENDOR NAME\"...");
        formx.vendor.focus();
        return(false);
    }

    if (formx.srcfile.value == "") {
        alert("Please select the "\FILE NAME\"...");
        return(false);
    }

    return (true);
}

HTML:

<form name="form1" id="form1" method="post" language="JavaScript" onSubmit="return CheckForm(this);return false;" action="appform2.asp">

<table width="100%" border="0" cellpadding="4" cellspacing="1" bgcolor="#c0c0c0">
    <tr>
        <td>Product Name / Version</td>
        <td>
            <input type="text" id="appname" name="appname" size="50" maxlength="255"/>
        </td>
    </tr>
    <tr>
        <td>Vendor Name</td>
        <td>
            <input type="text" id="vendor" name="vendor" size="50" maxlength="255"/>
        </td>
    </tr>
    <tr>
        <td>Source Binaries</td>
        <td>
            <input type="file" name="srcfile" id="srcfile"/>
        </td>
    </tr>
</table>

<p>
    <input type="reset" name="b2" id="b2" value="Reset"/>
    <input type="submit" name="b1" id="b1" value="Submit"/>
</p>

</form>    
4

0 回答 0