Метод отправки jquery не отправляет данные формы ввода. - PullRequest
0 голосов
/ 28 января 2019

Я пытаюсь отправить форму, используя две кнопки отправки.Вот HTML-код:

<form enctype="multipart/form-data" id ="type-1" accept-charset="UTF-8" action="process_upload.php" method="post" onsubmit="return Genome_upload_validation()" >

  <label for="organism">Organism Name</label><label id ="ErrorInput_1_1" ></label>
   <div class="form-group">
   <div class="form-line">
    <input id="organism_1" name ="organism" class="form-control" placeholder="Enter your Organism Name" type="text">
  </div>
 </div>

<label for="verion">Organism Version</label> 
<label id ="ErrorInput_1_2" ></label>
<div class="form-group">
 <div class="form-line">
  <input id="org_version_1" name="version" class="form-control" placeholder="Version" type="text">
 </div>
</div>

<div class="form-group">
 <label for="exampleInputFile">Genbank File</label>
 <input type="file" class="form-control-file" id="genbank_file" name= "genbank_file" aria-describedby="fileHelp">
 <small id="fileHelp" class="form-text text-muted">Please provide genbank file of your genome</small>
 <label id ="ErrorInput1" ></label>
</div>

<img id="captcha1" src="/securimage/securimage_show.php" alt="CAPTCHA Image" />
<input type="text" id= "captcha_code1" name="captcha_code1" size="10" maxlength="6" />
<a href="#" onclick="document.getElementById('captcha1').src = '/securimage/securimage_show.php?' + Math.random(); return false">[ Different Image ]</a>
<label id ="ErrorCaptcha1" ></label>
<hr>

<input type="Submit" name = "Submit-type-1" id = "Submit-type-1" Value ="Submit" class="btn btn-primary m-t-15 waves-effect">
<input type="Submit" name = "demo-type-1" id= "demo-type-1"  Value ="Load Demo Data" class="btn btn-primary m-t-15 waves-effect">
<input type="button" name = "down-type-1" Value ="Download Demo Data" class="btn btn-primary m-t-15 waves-effect" onclick="location.href='download.php?type=1'">
</form>

В обоих случаях я хотел бы проверить его код проверки.Я использую Securimage модуль для капчи.Я проверяю капчу с помощью ajax-вызова и отправляю форму на успешную проверку капчи.Но на странице действий я не могу переслать этот Submit-type-1 или demo-type-1, чтобы я мог написать функцию в соответствии с именем кнопки.Вот мой код для проверки:

$('input[name="Submit-type-1"]').click(function(){

    var captcha = $("#captcha_code1").val();
    jQuery.ajax({
        url: 'resources/qform/captcha_check.php',
        type: 'POST',
        data: {captcha_code: captcha},
        dataType: 'json'
    }).done(function(data) {
        if (data.error === 0){
            alert('submit successful');
            $('form#type-1').submit();
        }else{
            alert("There was an error with your submission.\n\n" + data.message);
            jQuery('#captcha_code1').val('');

        }
    });
    return false;
});

По сути, на странице метода записи я не могу получить значение $_POST["Submit-type-1"] на странице process_upload.php на Submit-type-1 нажмите.Так что кто-нибудь может помочь мне понять причину этого и исправить проблему.

1 Ответ

0 голосов
/ 28 января 2019
When you create html form with type="submit" then by default onSubmit function get execute.

Here you can use type="button" instead of type="Submit" 
or 
("#Submit-type-1").on('submit', function (e) {}); event.
or 
use e.preventDefault(); first line in $('input[name="Submit-type-1"]').click(function(){});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...