2017-01-22 9 views
-1

У меня есть кнопка сохранения и продолжения. Поэтому я хочу, чтобы третий клик представил данные. Я написал для него следующий код. Но port port не работает.Jquery submit on button

$(document).ready(function(){ 

var datastring=""; 

var d1= $("#Submit3").mousedown(function() { 
    alert("Event occurred"); 
    datastring = $("#reg_form").serialize(); 
    console.log(datastring); 
    }); 

function submit() 
{ 
    $('form').submit(function(){ 

     $.ajax({ 
      type: "POST", 
      url: "reg.php", 
      data: datastring, 
      success: function(data) { 
       console.log('Data send'); 
      } 
     }); 
    }); 
} 
    $.when(d1).done(submit()); 


});  
+0

Зачем использовать '$ .when', но не вызывать' submit() 'в' mousedown' функции? –

+0

Я тоже это пробовал, но это не сработало – katty

+0

no..that submit часть даже не запускается – katty

ответ

2

Попробуйте следующий код

$(document).ready(function(){ 
    $("#Submit3").on("click", function() { 
     alert("Event occurred"); 
     dataString = $("#reg_form").serialize(); 
     console.log(dataString); 
     submit(dataString); 
    }); 

    function submit(dataString) 
    { 
    $.ajax({ 
      type: "POST", 
      url: "reg.php", 
      data: dataString, 
      success: function(data) { 
       console.log('Data send'); 
      } 
     }); 
    } 
}); 
+0

yup ..... спасибо, что это сработало ... – katty

+1

Пожалуйста, отметьте это как ответ, если это то, что вы хотели сделать. –

+0

, но почему мой код не работал? – katty

0

Вам нужно сделать тип кнопки третьей кнопки, чтобы «представить» и тип двух других кнопок должно быть «кнопка» так же, как это.

<button type="button">Save</button> 
<button type="button">Continue</button> 
<button type="submit">Submit</button> 

Так что, когда вы нажмете на другие две кнопки, форма не будет отправлена. Только при нажатии третьей кнопки ваша форма будет отправлена. Вот сценарий для отправки формы

$("form").submit(function(e){ 
    e.preventDefault(); 
    var formData=$("form").serialize(); 
    console.log(formData); 
    $.ajax({ 
     type: "POST", 
     url: "register.php", 
     data: formData, 
     success: function(response) { 
      console.log('Data send'); 
     } 
    }); 
});