慢慢开始我的应用程序,因为我还在学习,我遇到了另一个问题。
我用JS生成了一个表单,一个文件输入和一个提交输入,以便上传一些照片并用.php文件显示他们的thumnails。我有这个代码。我提到这是级联菜单的一部分。
当我尝试上传照片时,我收到此错误:"未捕获的TypeError:无法设置属性'值' of null"在.php文件中。
我还想提一下,如果没有生成HTML元素并且它们在纯HTML中存在,那么相同的php脚本也能正常工作。
我知道这个php脚本不完整,但这仅用于测试目的。
JS
var form = document.createElement("FORM");
second_plate.appendChild(form);
form.setAttribute("id" , "form");
form.setAttribute("action" , "upload.php");
form.setAttribute("method" , "post");
form.setAttribute("enctype" , "multipart/form-data");
form.setAttribute("target" , "iframe");
console.log(form);
var inputpic = document.createElement("INPUT");
form.appendChild(inputpic);
inputpic.setAttribute("type" , "file");
inputpic.setAttribute("name" , "file");
inputpic.setAttribute("id" , "file");
var submitpic = document.createElement("INPUT");
form.appendChild(submitpic);
submitpic.setAttribute("id" , "submit");
submitpic.setAttribute("name" , "submit");
submitpic.setAttribute("type" , "submit");
submitpic.setAttribute("value" , "Upload photo");
var photosplace = document.createElement("DIV");
second_plate.appendChild(photosplace);
photosplace.setAttribute("id" , "photos");
var iframe = document.createElement("IFRAME");
second_plate.appendChild(iframe);
iframe.setAttribute("id" , "iframe");
iframe.setAttribute("name" , "iframe");
iframe.style.width = "0%";
iframe.style.height = "0%";
iframe.style.display = "none";
PHP
<?php
if ($_FILES['file']['size'] > 0) {
if (move_uploaded_file($_FILES['file']['tmp_name'], uploads/".$_FILES['file']"name"])) {
?>
<script>
document.getElementById("file").value = "";
updatepic("<?php echo 'uploads/'.$_FILES['file']["name"]; ?>");
</script>
<?php
}
}
?>