html表单动作和onclick

时间:2014-10-05 22:23:39

标签: php html onclick buttonclick

这是一个名为upload_file.php的php文件:

<?php
  if ($_FILES["file"]["error"] > 0) {
    echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
  } else {
    echo "Upload: " . $_FILES["file"]["name"] . "<br>";
    echo "Type: " . $_FILES["file"]["type"] . "<br>";
    echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
    echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>";
    if (file_exists("upload/" . $_FILES["file"]["name"])) {
      echo $_FILES["file"]["name"] . " already exists. ";
    } else {
      move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $_FILES["file"]["name"]);
      echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
    }
  }
?>

当我使用html表单调用上述文件时:

<form action="upload_file.php" method="post" enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file"><br>
<input type="submit" name="submit" value="Submit">
</form>

一切都很好,我设法将所选文件上传到/ upload local server文件夹。

我的问题:如果我想使用onclick,上述表格的等效内容是什么?即在以下代码中

<a href="#x" class="overlay" id="browse_file"></a>
        <div class="popup">
            <h2>Browse for your file</h2>
            <input type="file" name="file" id="file"><br>
            <input type="button" value="file" onclick= "location.href = 'upload_file.php'">
        </div>

定义了一个弹出窗口(由anothel模式对话框控制 - 这就是为什么我不想使用该表单),为了在用onclick调用upload_file.php时将所选文件名传递给$ _FILES应该完成什么?

谢谢各位朋友。

1 个答案:

答案 0 :(得分:0)

如果你想使用带表格的onclick功能,你应该阅读有关AJAX和javascript的内容。在jquery中有非常简单的ajax请求实现。您还可以使用jquery从输入中轻松获取所选文件。