2013-11-09 41 views
0

我有一个表单的第一页,然后使用jQuery加载表单的第二部分。然而,当我点击表单上的提交后,没有任何反应,页面就停留在这里。有任何想法吗?PHP表单在通过Ajax加载后不会提交

的jQuery:

 $.ajax({ 
      type: "POST", 
      url: "join_submit.php",      
      data: data, 
      success: function() { 
       $("#regform").load("submitTranscript.php"); 
      } 
     });   

submitTranscript.php:

<div id="regform> 
<form id="uploadTranscript" action="uploadPDF.php" enctype="multipart/form-data" method="post"> 
<div class="separation"> 
    <h3>Upload Transcripts</h3> 
    <div class = "row"> 
     <div class="large-6 offset-2 columns"> 
     <label for = "studid">Enter your student ID:</lable> 
      <input type="text" name="studid" id="studid" 
    </div> 
    <p>Please label your transcript with your user id (i.e. 123456.pdf).</p> 
    <div class="row"> 
     <div class="large-6 offset-2 columns"> 
      <input type="file" name="transcript" id="transcript"> 
     </div> 
    </div> 
    <div class="buttonRow"> 
     <div class="button" id="submit">Submit</div> 
    </div> 
    </div> 
    </form> 
</div> 

uploadPDF.php:

<?php 
require_once("included.php"); //server info 
$allowedExtensions = array("pdf"); 
$max_filesize = 20000; 
$upload_path = "docs/transcripts/"; 
$filename = $_FILES["transcript"]["name"]; 
$filesize = $_FILES["transcript"]["size"]; 
$extension = $_FILES["transcript"]["type"]; 
if ($_FILES["transcript"]["error"] > 0) { 
     echo "Error: " . $_FILES["transcript"]["error"] . "<br />"; 
    } 
else if((in_array($extension, $allowedExtensions)) && ($filesize < $max_filesize)) { 
    move_uploaded_file($_FILES["transcript"]["tmp_name"], $upload_path . $filename); 
} 
else if($filesize > $max_filesize){ 
    $fileSizeFail = true; 
} 
else {      
    $fileTypeFail = true; 
} 
?> 

回答

3

如果我看着submitTranscript.php,您已经编写以下提交您的形式:

<div class="buttonRow"> 
    <div class="button" id="submit">Submit</div> 
</div> 

但是,您还没有插入任何提交按钮来提交表单。 Div元素不能发布或提交任何表单。所以,我会建议把一个输入类型提交按钮,然后尝试通过该按钮提交您的表单。

因此,代码将是:

<div class="buttonRow"> 
    <div class="button" id="submit"> 
     <input type="submit" name="form_submit" value="Submit" /> 
    </div> 
</div> 
+0

如果你的问题解决了,那么可以请大家提出答案投票拉起位于左顶我的答案。 –

0

您没有提供有关join_submit.php文件中的任何信息。你必须检查Firefox浏览器中的firebug控制台你的join_submit.php文件的返回值是什么。是否要成功。那么只有你可以追踪它为什么不加载第二个表单。在Chrome浏览器中,您可以通过单击F12然后单击网络来跟踪ajax请求。

希望它可以帮助