したがって、 jQuery Form プラグインに接続された基本的なコメントフォームがあります(メンバーのみが投稿できるため、名前/電子メール フィールドはありません)。
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script src="/assets_site/js/jquery.form.min.js"></script>
<script>
$(document).ready(function(){
function ajaxReturn(data) {
var messageContainer = $('.alert-box');
var messageBody = $(data);
messageContainer.html(messageBody);
}// ajaxReturn(data)
$('.member-review').ajaxForm({
success: ajaxReturn
});
});
</script>
</head>
<body>
{exp:channel:entries
channel='products'
limit='1'
disable='categories|member_data|pagination'
}
{exp:comment:form
channel='products'
form_class='member-review'
return='notifications/success'
}
<div class="alert-box">
{!-- Ajax Form Errors --}
</div><!--.alert-box-->
<label for="comment">Tell others what you think</label>
<textarea name="comment" rows="8" class="required" id="comment"></textarea>
<input type="submit" value="Submit">
{/exp:comment:form}
{/exp:channel:entries}
</body>
</html>
そして、このデモの目的のために、私の成功テンプレートはこれ以上単純ではありません。
<p>Sumission Successful!</p>
残念ながら、完成したフォームを送信しても、データが返されません。console.log($(data));
ajaxReturn 関数に追加すると、空の文字列が返されます。コメントはデータベースに正常に送信されました。それは、それを作成していないように見えるリターン テンプレートです。
なぜこれが起こっているのか本当にわかりません。成功テンプレートではなく、エラー メッセージを正しく返します。
EE v2.5.3
更新: これは、私がやろうとしていることの基本をカバーするビデオです。以前のバージョンの EE で以前に成功したことがあるので、最近何かを変更して機能しなくなったのではないかと思っています。