$.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です