私が抱えている問題はvar myFileList = document.getElementById('upload_file').files;
、PHPファイルによって「動的に作成」された情報を取得しようとすると、ファイルを取得できず、コード内でそれ以上実行されないことです。ただし、HTML ページ内に同じテーブルを作成し、フォームをテーブルに追加すると、コードは完全に機能します。
要約すると、表は PHP からのものであるため、フォームは機能しません。
フォームが作成される PHP の私の列は、次のappendChild
ように行われます。
$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を使用できません。