AJAX要求とフォーム提出阻止処理

2695 ワード

ajaxデフォルト要求の出力フォーマットはあなたの頭のフォーマットです.要求が戻ってきたのはtextフォーマットです.このときvar data = JSON.parse(data)を追加すると、私たちが必要とするオブジェクトフォーマットになります.または、要求フォーマットがjsonであることを示します.
postリクエスト方式、パラメータはキー値ペアでつなぎ合わせる
   $('#username').blur(function () {
            $.post('register_in.php',{method:'ajax_check_username',username:document.billform.username.value},function (data) {
                if(data.status=='205'){
                    $('#check_username').text(data.text).css("color",'red');
                }else{
                    $('#check_username').text(data.text).css("color",'blue');
                }
            },'json');
        });

ajaxリクエスト方式
$.ajax({
                            cache: false,
                            type: "POST",
                            url:"{{route('Api.operate')}}",
                            data:{
                                'did':did, 
                                'envid':$.cookie('env'),
                                'type':type
                            },
                            headers: {
                                'X-CSRF-TOKEN': $("input[name='_token']").val()
                            },
                            dataType: 'json',
                            success: function(res) {
                                if(res.status){
                                    layer.msg(res.message)
                                    if(type==1){
                                        window.location.href='/Api/list';
                                    }
                                }else{
                                    layer.msg(res.message);
                                }
                            },
                            error: function(request) {
                                layer.msg("    ,     ");
                            },

フォームのコミットをブロック
ボタンがbuttonを使うと、なぜ携帯電話のsafariブラウザがクリックして無反応になることがあるのか分かりませんが、submitに変更すればいいです.submitに変更すると、フォームが提出されますが、私たちはajaxをするとき、フォームの提出を望んでいません.この場合の解決策は、inputボックスにonclick="return false;"を追加してonsubmitを使用してはいけません.それから、jsに自分のclick時間を書けば実行できます.
jsはphpのjsonを参照する

    var obj = <?=$json?>  //