0

我遇到的问题是var myFileList = document.getElementById('upload_file').files;当我尝试获取我的 PHP 文件“动态创建”的信息时,没有获取文件并且没有在代码中进行任何进一步的操作。但是,如果我在我的 HTML 页面中创建同一个表格并将表单附加到表格中,则代码可以完美运行。

总结一下:因为表格来自 PHP,所以表格不起作用。

我在 PHP 中的 colappendChild是这样完成的:

$display_String .= '<td><div id = "image'.$f1.'"></div></td>';

制作表单的 JavaScript 是:

    var f = document.createElement("form");
f.setAttribute('enctype',"multipart/form-data");
f.setAttribute('method',"post");
f.setAttribute('action',"uploadImage.php");


var i = document.createElement("input"); //input element, text
i.setAttribute('type',"file");
i.setAttribute('name',"upload_file");
i.setAttribute('id',"upload_file");
i.setAttribute('size',4);

f.appendChild(i);
document.getElementById("image1").appendChild(f);

“image1”是 php 表中 div 的名称,正如我所说,如果我像这样在 html 文件中静态创建表,它可以正常工作

    <table>
    <tr>
        <td>test </td>
        <td> bah </td>
    </tr>
    <tr>  
        <td> <div id ="image1">  </div> </td>
        <td> col2</td>
    </tr>
    <tr>  
        <td></td>
        <td> col2 </td>
    </tr>
    </table>

我知道这将是一件非常简单的事情,也很抱歉我不能为此使用 JQuery。

4

1 回答 1

0

尝试将它放在加载文档时执行的函数中。

document.onload = doYourThing();

function doYourThing() {
    //Your code here
}
于 2013-04-12T19:20:47.783 回答