クライアント側にこのコードがあります:
this.formValidation = function() {
// Parse forms
$('.submit.btn').on('click', function(){
$(this).closest('form').submit();
});
$.each($('form.validate'), function(){
$(this).validate({
submitHandler: function(form) {
var data = $(form).serializeArray();
var action = $(form).attr('action');
$.ajax({
method: 'post',
dataType: 'json',
url: action,
data: data,
success: function(d) {
// Prepare the message
var message = '';
$.each(d, function(k, m){
var messageType = 'boolean' === $.type(m.status) ? (m.status?'success':'error') : m.status;
message += '<div class="alert alert-'+messageType+'">'+m.message+'</div>';
});
// Replace the form with the message
$(form).replaceWith($(message));
},
error: function() {
var error = $('<div class="alert alert-error">error </div>');
$(form).replaceWith(error);
}
});
}
});
});
};
サポートされているメッセージ タイプは次のとおりです: css がスタイルをロードするための 'success' および 'error'
サーバー内のこのコード:
$d= array(
'status' => 'success',
'm.status'=> 'success',
'message'=>'success'
);
echo json_encode($d);
?>
しかし、成功メッセージは返されません。サーバー側で配列を形成するにはどうすればよいですか?
コードの成功セクションに入ることは知っていますが、サーバー側で変数を記述する方法がわかりません。
JavaScript コードは変更しないでください。サーバーの php を変更するだけです。これどうやってするの?
また、いくつか質問があります。
サーバーphpの変数名は、関数内の変数名と同じにする必要がありますか? この例では、 $d をエコーするときに、次のようにする必要があり
success: function(d) {
ますか、それとも他の名前を使用できますか? それらは関連していますか?変数 'k' と 'm'
function(k, m){
はいつ由来しますか? 関数が何をするのか説明できますか?