2016-10-17 12 views
0

私は一連の入力フィールドを持っています。処理するために値をPHPページに投稿してから、ページを再読み込みせずにデータを返すことをお勧めします。ここまでは私がこれまで持っていたことはありますが、データは通過していないようです。AjaxでPHPに入力を投稿する

HTML:

<!DOCTYPE html> 
<html> 
<head> 
<script type="text/javascript" src="js/jquery.min.js"></script> 
<script> 
$(document).ready(function() { 
    $("form").submit(function(form) { 
    $.ajax({ 
     type:"POST", 
     url:"catch.php", 
     data: $(this).serialize(), 
     success: function(data) { 
     $('#result').html(data); 
     console.log(data); 
     } 
    }); 

    form.preventDefault(); 
    }); 
}); 
</script> 
</head> 
<body> 
<form method="post" name="form"> 
<input type="submit" name="event" value="1" /> 
<input type="submit" name="event" value="2" /> 
<input type="submit" name="event" value="3" /> 
<input type="submit" name="event" value="4" /> 
</form> 
<div id="result"></div> 
</body> 
</html> 

PHP:

<?php 

if(isset($_POST["event"])) 
{ 
    echo $_POST["event"]; 
} 

?> 
+0

何を変更した場合、 ''データにdata':$( 'フォーム')EQ(0).serialize() '? – jonathanGB

+1

提出型入力のシリーズですか?同じ名前の各ボタン? – Farhan

+0

あなたは入力フィールドについて言及しましたが、これらはすべてボタンです。 input type = "text"を使用し、入力ごとに固有の名前に変更します。 – Netham

答えて

0
<!DOCTYPE html> 
<html> 
<head> 
<script type="text/javascript" src="js/jquery.min.js"></script> 
<script> 


    $(document).ready(function() { 

    $('.event').on('click', function(){ 
    $('#event').val($(this).val()); 
    $('#event_form').submit(); 
    }); 
    $("form").submit(function(form) { 
    $.ajax({ 
     type:"POST", 
     url:"catch.php", 
     data: $(this).serialize(), 
     success: function(data) { 
     $('#result').html(data); 
     console.log(data); 
     } 
    }); 

    form.preventDefault(); 
    }); 
}); 
</script> 
</head> 
<body> 
    <form method="post" name="form" id="event_form"> 
<input name="event" id="event" value="" type="hidden"> 
    <input type="button" class="event" value="1" /> 
    <input type="button" class="event" value="2" /> 
    <input type="button" class="event" value="3" /> 
    <input type="button" class="event" value="4" /> 
    </form> 
<div id="result"></div> 
</body> 
</html> 
+0

大変感謝しています! – user6368630

+0

問題ありません。コーディング中にユーザーエクスペリエンスを念頭に置いているような気がします。 – Chris

関連する問題