1

我有一个从 ajax 响应加载的表单,其中包含一些 textarea 和一个文件上传选项。我的表格看起来像这样..

<form name="myFm" id="myFm" enctype="multipart/form-data">
    <table>
            <tr>
                <td valign="top">
                    <label>My Label</label>
                </td>
                <td>
                    <textarea name="myText" id="myText"></textarea>
                </td>
            </tr>
            <tr>
                <td>
                    <label>File Upload</label>
                </td>
                <td>
                    <input type="file" id="files" name="myFile" value="Upload" /> 
                </td>
            </tr>
            <tr>
                <td>
                  <input type="button" name="fmSub" value="Submit" onclick="myAjaxFunction();" />
                </td>
            </tr>
    </table>
</form>

表单将通过 ajax 函数提交到我的 PHP 脚本。我尝试使用下面的 jquery 脚本来验证上传文件。

$(':file').change(function(){
    var file = this.files[0];
    name = file.name;
    size = file.size;
    type = file.type;
    if(name.length > 0)
    alert(name);
    //your validation
 });

该脚本适用于普通的 html 表单,但不适用于我的 ajax 加载表单。任何帮助将不胜感激。谢谢..

4

1 回答 1

1

在加载表单之前,您在哪里设置该处理程序?在这种情况下试试这个

$(':file').live('change', function(){
    ...
}
于 2012-10-20T15:39:12.877 回答