繁体   English   中英

单击模式按钮时未提交表单

[英]Form is not submit when click on modal button

当我单击模态更新按钮时,我在模态上有一个表单,然后它什么也没有发生。

这是我的模态代码

 $("#TypeValidation").on('submit', (function(e) { alert('enter'); var reference = $(this).find('input[name="reference"]').val(); var valid_date = $(this).find('input[name="valid_date"]').val(); var description = $(this).find('select[name="description"]').val(); var attachment = $(this).find('input[name="attachment"]').val(); var Update_taskid = $(this).find('button[name="Update_task"]').val(); if (description && reference && valid_date) { e.preventDefault(); $.ajax({ url: "../../controllers/authentication_function.php?Update_taskid=" + Update_taskid, type: "POST", data: new FormData(this), contentType: false, cache: false, processData: false, dataType: "html", beforeSend: function() { $("#Update_task").prop('disabled', 'disabled') }, success: function(result) { alert(result); location.reload(); if (result == '1') { location.replace("lst_tasks.php"); } else { location.replace("lst_tasks.php"); } } }); } })); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div id="editTasks_<?php echo $Row[$data]->id;?>" class="modal fade" role="dialog"> <div class="modal-dialog"> <!-- Modal content--> <div class="modal-content"> <div class="modal-header"> </div> <form id="TypeValidation" action="" method="post" enctype='multipart/form-data'> <div class="modal-body"> <div class="row"> <div class="col-sm-6 form-group has-label"> <label> Reference </label> <input class="form-control" name="reference" type="text"> </div> <div class="col-sm-3 form-group has-label"> <label> Expiry Date of file </label> <input class="form-control datepicker" name="valid_date" type="text"> </div> </div> <div class="row"> <div class="col-sm-6 form-group has-label"> <label> File Upload </label><br> <div class="fileinput fileinput-new text-center" data-provides="fileinput"> <div class="fileinput-preview fileinput-exists thumbnail"></div> <div> <span class="btn btn-rose btn-round btn-file"> <span class="fileinput-new">Select File</span> <span class="fileinput-exists">Change</span> <input type="file" name="attachment" id="attachment" /> </span> <a href="#" class="btn btn-danger btn-round fileinput-exists" data-dismiss="fileinput"><i class="fa fa-times"></i> Remove</a> </div> </div> </div> </div> <div class="row"> <div class="col-sm-12 form-group has-label"> <label> Description </label> <textarea class="form-control" name="description"></textarea> </div> </div> </div> <div class="modal-footer"> <div class="pull-left"> <button type="submit" value="Update_task" name="Update_task" id="Update_task" class="btn btn-info">Update</button> </div> <div class="pull-right"> <button type="button" class="btn btn-primary" data-dismiss="modal">Close</button> </div> </div> 

这是authentication_function.php代码

  <?php
if(isset($_REQUEST['Update_taskid']) && ($_REQUEST['Update_taskid']=="Update_task")){
    global $con;

         $reference = base64_encode($_REQUEST['reference']);
         $valid_date = $_REQUEST['valid_date'];
         $description = base64_encode($_REQUEST['description']);
         $cdate = date("Y-m-d H:i:s");
         $status = 1;

          //Task File  UPLOAD
         if ($_FILES['attachment']['name']!=""){
             if($_FILES['attachment']['size'] >= 1048576) {
                print "<font color='#CC0000' size='+1' style='font:bold'><strong>Image Size Out of Bound.</strong></font>";
                break;
             }

        $filePath="../uploads/task_files/";
        $file = $_FILES['attachment']['name'];
        move_uploaded_file($_FILES['attachment']['tmp_name'], $filePath.$file);

        }
         else {$file=$_SESSION['file1']; unset($_SESSION['file1']);}
                       $update_task = array("reference"=>$reference,"valid_date"=>$valid_date,"description"=>$description,"attachment"=>$file,"cdate"=>$cdate,"status"=>$status);
        $table = tbl_task_activities;

        $UpdateTask = InsertDB($update_task, $table);

        if ($UpdateTask!=''){
            $_SESSION['update_task']="update_msg";
            echo 1;
            }
            else{
                $_SESSION['error_update_task']="update_error_msg";
            echo 0;
                }
            }
          ?>

我尝试过,无法修复我的错误。 plaese告诉我我在哪里做错了。 提前致谢

尝试这个。 我认为这将帮助您提交表格。

<script type="text/javscript">
$(function(){
     //form submit code here   
      $("#TypeValidation").on('submit', (function(e) {
          alert('enter');
       });
});
</script>

我检查了您的代码,发现只有一个错误会造成问题:

将select [name =“ description”]更改为以下内容

 var description = $(this).find('textarea[name="description"]').val();

因为您有用于说明的文本区域

 <textarea class="form-control" name="description"></textarea>

还要移动e.preventDefault(); 第一行

$( document ).ready(function() {
  $("#TypeValidation").on('submit', (function(e) {
    e.preventDefault();

会的!!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM