これが起こるはずのことです:
ボタンをクリックすると、フォームの送信が無効になります。次に、テキスト スワップが実行されます。テキスト スワップが完了すると、cancel の var が false に切り替わり、フォームが送信されます。
ただし、var cancel が false に切り替わらない場合に問題が発生します。なぜそうならないのかわかりません。
<script type="text/javascript">
var cancel = true;
$("#btn-submit").click(function(){
if (cancel = true) {
$('form').on('submit', function(ev) {
ev.preventDefault();
form = $(".submit-form");
fp = $('#free-planner');
fp.fadeOut(350, function () {
fp.text('Check your email!');
});
fp.fadeIn(350, function() {
var cancel = false;
});
});
}
});
if (cancel = false) {
form.submit();
}
</script>