0

私は何度も試してみましたが、最終的に get は jquery と json でこのフォームを動作させません:

<script>
var idcc="<?php echo $tfw_number_format;?>";
</script>


<script>
$('#contact-form-widget-'+idcc).on('submit',function () {
    $.ajax({
        url: '<?php echo $phpValidate;?>',
        cache: false,
        type: 'POST',
        data : $('#contact-form-widget-'+idcc).serialize(),
        success: function(json) {
            alert('all done');
        }
    });
});
</script>


<form id="contact-form-widget-<?php echo $tfw_number_format;?>" class="contact-form-widget" method="post" action="">
    <input type="text" name="" value="" class="contact_text">
    <input class="contact_rapid_boton" type="submit" value="Send">
</form>

問題は、ボタンを押すと常に他のページに移動し、滞在せずに機能します。問題はありませんが、何かが正しく機能しないことを確認しているため、何が悪いのかわかりません

4

2 に答える 2

0

jQuery をインクルードし、DOM 対応ハンドラーを使用して、フォームがページを送信およびリロードしないようにします。

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

<script type="text/javascript">
    var idcc = "<?php echo $tfw_number_format;?>";
    $(function() {
        $('#contact-form-widget-'+idcc).on('submit', function(e) {
            e.preventDefault();
            $.ajax({
                url  : '<?php echo $phpValidate;?>',
                type : 'POST',
                data : $('#contact-form-widget-'+idcc).serialize(),
                success: function(json) {
                    alert('all done');
                }
            });
        });
    });
</script>

<form id="contact-form-widget-<?php echo $tfw_number_format;?>" class="contact-form-widget" method="post" action=""></form>
于 2013-07-24T07:38:53.127 に答える
0

使用するevent.preventDefault()

<script type="text/javascript">
$('#contact-form-widget-'+idcc).on('submit',function (event) {

    event.preventDefault();

    $.ajax({
        url: '<?php echo $phpValidate;?>',
        cache: false,
        type: 'POST',
        data : $('#contact-form-widget-'+idcc).serialize(),
        success: function(json) {
            alert('all done');
        }
    });
});
</script>
于 2013-07-24T07:39:06.567 に答える