0

$.ajax を使用した ajax+jquery ナビゲーション システムがあり、$.ajax を 2 回呼び出して連絡先フォームの情報を送信しようとしていますが、2 番目の $.ajax を追加すると、すべてが機能しなくなります。

最初の呼び出し -

function loadPage(url)
{
    url=url.replace('#!','');

    $('#loading').css('visibility','visible');

    $.ajax({
        type: "POST",
        url: "loader.php",
        data: 'page='+url,
        dataType: "html",
        success: function(msg){

            if(parseInt(msg)!=0)
            {
                $('#conteudo').html(msg);
                $('#loading').css('visibility','hidden');
            }
        }

    });

}

セカンドコール

$("#enviar").click(function() {  

    var str = $("form").serializeArray();

    $.ajax({  
        type: "POST",  
        url: "update.php",  
        data: str, 
        success: function(mn) { 

            if(parseInt(mn)!=0)
            {

            $("#conteudo").html(mn);
            $("#enviado").css('visibility','visible');

            }

    }

    return false;

});

@編集

とても良い!最初の ajax はスタックしなくなりましたが、この 2 番目は期待どおりに機能していません。

これは、$_POST 値を php スクリプトに解析し、OK の場合は div を表示することを目的としています。

どのように私はそれをやっている -

<form name="formcontato" id="form">
  <fieldset>
    <label>Seu nome</label>
    <input type="text" name="nome" class="input-block-level">

    <label>Email</label>
    <input type="email" name="email" placeholder="seu@email.com" class="input-block-level">

    <div class="form-actions">
    <input type="button" name="enviar" value="Enviar" id="enviar" class="btn btn-baixar" />  
    </div>
  </fieldset>
</form> 

これがフォームです。

$("#enviar").click(function () {

    var str = $("#form").serialize();

    $.ajax({
        type: "POST",
        url: "update.php",
        data: str,
        success: function (mn) {

            alert("Ok!");

            if (parseInt(mn) != 0) {

                $("#conteudo").html(mn);
                $("#enviado").css('visibility', 'visible');

            }

        }

    });

    return false;

}); 

これはjsです

if($_POST) {

$nome = trim($_POST['nome']);
echo $nome;

}

これはupdate.phpです

4

1 に答える 1