php表单 - onsubmit重置表单

时间:2011-11-20 21:37:36

标签: php javascript forms onsubmit

我创建了一个表单,到目前为止一切正常。我唯一剩下的就是在提交表单时重置字段。这似乎是一个简单的任务,但在环顾四周并尝试一些事情似乎没有什么可以做的伎俩:(我现在所拥有的是从另一个帖子,但我的提交事件与他们的不同,这就是为什么我认为它不起作用。任何帮助非常感谢。

php部分

///////////////////////////////// upload image

//define a maxim size for the uploaded images in Kb
define ("MAX_SIZE","500"); 

 //This function reads the extension of the file. It is used to determine if the file   is an image by checking the extension.
function getExtension($str) {
     $i = strrpos($str,".");
     if (!$i) { return ""; }
     $l = strlen($str) - $i;
     $ext = substr($str,$i+1,$l);
     return $ext;
}

//This variable is used as a flag. The value is initialized with 0 (meaning no error     found)  
//and it will be changed to 1 if an errro occures.  
//If the error occures the file will not be uploaded.
$errors=0;
//checks if the form has been submitted
if(isset($_POST['submit'])) 
{
//reads the name of the file the user submitted for uploading
$image=$_FILES['image']['name'];
//if it is not empty
if ($image) 
{
//get the original name of the file from the clients machine
    $filename = stripslashes($_FILES['image']['name']);
//get the extension of the file in a lower case format
    $extension = getExtension($filename);
    $extension = strtolower($extension);
    if (($extension != "jpg") && ($extension != "jpeg") && ($extension != "png") &&      ($extension != "gif")) 
    {
    //print error message
        echo '<h1>Unknown extension!</h1>';
        $errors=1;
    }
    else
    {
//get the size of the image in bytes
//$_FILES['image']['tmp_name'] is the temporary filename of the file
//in which the uploaded file was stored on the server
$size=filesize($_FILES['image']['tmp_name']);

//compare the size with the maxim size we defined and print error if bigger
if ($size > MAX_SIZE*1024)
{
echo '<h1>You have exceeded the size limit!</h1>';
$errors=1;
}

$newname="storeImages/".$filename;
//we verify if the image has been uploaded, and print error instead
$copied = copy($_FILES['image']['tmp_name'], $newname);
if (!$copied) 
{
echo '<h1>Copy unsuccessfull!</h1>';
$errors=1;
}}}}

//If no errors registred, print the success message
if(isset($_POST['submit']) && !$errors) 
{
echo "<h1>File Uploaded Successfully!</h1>";
}

//direct to same page but refresh
//header('Location: storeListForm.php');

?>

表格

<body>

<script type="text/javascript">
function onFormSubmit ()
{
    document.storeList.reset();
    return true; // allow form submission to continue
}
</script>

<div id="signUp"> 

<?php 
//if the validation falls back to php, then print the validation error
if (isset($error_message)) echo $error_message;
?>

<form method="post" action="" id="storeList" name="storeList" enctype="multipart/form-  data">  
<table>
<tr>
  <td><label for="name">Name</label></td>
  <td><input type="text" name="name" id="name" value="<?php if (isset($_POST['name'])) echo $_POST['name'];?>"/></td>
</tr>
<tr>
   <td> <label for="storeLocation">Location</label></td>
   <td><input type="text" name="storeLocation" id="storeLocation" value="<?php if   (isset($_POST['storeLocation'])) echo $_POST['storeLocation'];?>"/></td>
</tr>
<tr>
   <td><label for="featured_items">Featured Items</label></td>
   <td><input type="text" name="featured_items" id="featured_items" value="<?php if  (isset($_POST['featured_items'])) echo $_POST['featured_items'];?>"/></td>
</tr>
<tr>
   <td><label for="keywords">Keywords</label></td>
   <td><input type="text" name="keywords" id="keywords" value="<?php if     (isset($_POST['featured_items'])) echo $_POST['keywords'];?>"/></td>
</tr>
<tr>
   <td><label for="fileImage">Image</lable></td>
   <td><input type="file" name="image"></td>

</tr>
   <td>Description</td>
   <td> <textarea for="description"></textarea type="text area" name="description"  id="description" value="><?php if (isset($_POST['description'])) echo  $_POST['description'];?>"/></td>
</tr>
<tr>
    <td></td>
    <td><input type="submit" name="submit" id="submit" value="Add Store"  onsubmit="this.submit(); this.reset(); return false;"></td>
</tr>
</table>
</form>
</div>
</body>

1 个答案:

答案 0 :(得分:0)

也许你正在寻找这个?

onClick="this.form.reset()"

(你的只有this.reset())。