これは非常に奇妙な問題です。サインアップフォームsignup.phpがあります。これは、jQuery検証プラグインを使用して検証します。
過去2か月に2回、フォームのシリアル化が突然失敗し(以下のコードを参照)、何input
を入力しても値は送信されません。奇妙な部分は、単にsignup.phpファイルの名前を(たとえば、signup0.phpに)変更すると、フォームのシリアル化が再び機能し、フォームが検証されることです。signup.phpファイルは、次のコードを使用してメインのtemplate.phpファイルに含まれています。
PHP
<? include $_SERVER['DOCUMENT_ROOT'] . '/application/views/forms/signup.php';?>
JS:
beforeSubmit:function(formData, $form, options)
var thisFormData = $.param(data.formData);
console.log('live data: ' + thisFormData);
//this yields no data regardless of what I enter in any of the input fields
//subsequently $($form).validate() fails
誰かがここで何が起こっているのか手がかりを持っていますか?このtemplate.phpファイルにはlogin.phpフォームも含まれていますが、この問題が発生することはありません。PHPファイルの名前を変更すると修正できるため、これはJSの問題ではなくPHPの問題である必要があります。私が考えることができる唯一のことは、signup.phpの複数の隠されたインスタンスが何らかの形で作成されているということですが、それは狂った人の考えのようです。