第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

使用$.each循環(huán)創(chuàng)建多個(gè)div,不起作用

使用$.each循環(huán)創(chuàng)建多個(gè)div,不起作用

PHP
子衿沉夜 2023-08-11 16:33:16
我的 php 頁面設(shè)置如下:<?php    if(isset($_POST['submit'])){        // Validate results and if correct insert into the DB        // Else add the respective errors        $data[0]['error_1'] = 'Error_1_text';        $data[0]['error_2'] = 'Error_2_text';        /*        .        .        .        */        $data[0]['error_n'] = 'Error_n_text';        print_r(json_encode($data[0]));    }?>這是以下 AJAX 請(qǐng)求發(fā)送 POST 請(qǐng)求的位置。如果輸入的表單有效,則將其插入數(shù)據(jù)庫,否則如果有任何錯(cuò)誤,則所有錯(cuò)誤都會(huì)附加到數(shù)組索引中,$data[0]最后數(shù)組是json_encoded, 并print_r()編輯。<body>    <div class="ssss"></div></body><script>    $.ajax({        url: "http://localhost/path/to/above/file",        method: "POST",        data: {            submit: 'yes',            form_data_0: 'form_text',            form_data_1: 'form_text',            form_data_2: 'form_text'        },        success: function(data){            // Code to check if errors were present            result = JSON.parse(data);            if (result.hasOwnProperty('0')) {                $.each(result['0'], function(key, error) {                    let x = 0;                    // Display each error into a modal                    $("div#ssss").html('<div id="dmessage_' + x + '" class = "modal" style="display:block"><p id = "pmessage_' + x + '">' + error + '</p></div>');                    x++;                });            }        }    });</script>AJAX 請(qǐng)求成功后,data為JSON.parse()d 并且該結(jié)果被分配給變量result。然后我們檢查表單的后處理過程中是否有任何錯(cuò)誤。使用if (result.hasOwnProperty('0')),如果是這樣,目的是顯示<p>error</p>帶有動(dòng)態(tài) id 的 a 中的每個(gè)錯(cuò)誤,并包含在<div>帶有動(dòng)態(tài) id 的 a 中。為了實(shí)現(xiàn)這一點(diǎn),我創(chuàng)建了一個(gè)$.each()循環(huán)并啟動(dòng)了一個(gè)變量x = 0。現(xiàn)在我們遍歷$.each()循環(huán)的內(nèi)容,我們打算顯示 一個(gè) ,其中<div></div>包含代碼中顯示的內(nèi)容以及errorPHP 從后端發(fā)送過來的文本以及dmessage_與 的當(dāng)前值連接的id x。完成后,我們將遞增x并再次循環(huán)以處理下一個(gè)錯(cuò)誤。然而發(fā)生的情況是,無論 PHP 發(fā)送了多少錯(cuò)誤,都只顯示 1 個(gè)錯(cuò)誤框。我通過在語句中添加以下代碼來確認(rèn)這一點(diǎn)if():let array = [];$.each(result['0'], function(key, error) {    // Display each error into a modal});array[x] = array.push(error);console.log(array); // Displays all the errors correctly inside the console
查看完整描述

2 回答

?
呼如林

TA貢獻(xiàn)1798條經(jīng)驗(yàn) 獲得超3個(gè)贊

我知道你有解決方案,但我會(huì)發(fā)布我的答案

第一: echo json_encode

第四:根本不需要使用,x可以直接使用key

第五:可以直接使用dataType: 'json'代替JSON.parse(data)

第六:更改.html(.append(

考慮以上所有內(nèi)容,那么您的代碼應(yīng)該如下所示

php

<?php

    if(isset($_POST['submit'])){

        // Validate results and if correct insert into the DB

        // Else add the respective errors

        $data['error']['error_1'] = 'Error_1_text'; // change all `$data[0]` to `$data['error']` it will be much easier 

        $data['error']['error_2'] = 'Error_2_text';

        /*

        .

        .

        .

        */

        $data['error']['error_n'] = 'Error_n_text';

        echo(json_encode($data));  // <<<< just $data here

    }

?>

JS


<body>

    <div class="ssss"></div>

</body>

<script>

    $.ajax({

        url: "http://localhost/path/to/above/file",

        method: "POST",

        dataType : 'json',  //<<<<< here

        data: {

            submit: 'yes',

            form_data_0: 'form_text',

            form_data_1: 'form_text',

            form_data_2: 'form_text'

        },

        success: function(data){

            // Code to check if errors were present

            if (data.error) {   //<<<<< here

                $.each(data.error, function(key, error) {

                    // Display each error into a modal

                    $("div#ssss").append('<div id="dmessage_' + key + '" class = "modal" style="display:block"><p id = "pmessage_' + key + '">' + error + '</p></div>');

                });

            }else{

               $("div#ssss").html('');

            }

        }

    });

</script>


查看完整回答
反對(duì) 回復(fù) 2023-08-11
?
暮色呼如

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超9個(gè)贊

這解決了我的問題:


<script>

    $.ajax({

        url: "http://localhost/path/to/above/file",

        method: "POST",

        data: {

            submit: 'yes',

            form_data_0: 'form_text',

            form_data_1: 'form_text',

            form_data_2: 'form_text'

        },

        success: function(data){

            // Code to check if errors were present

            result = JSON.parse(data);

            let x = 0;

            if (result.hasOwnProperty('0')) {

                $.each(result['0'], function(key, error) {

                    // Display each error into a modal

                    $("div#ssss").append('<div id="dmessage_' + x + '" class = "modal" style="display:block"><p id = "pmessage_' + x + '">' + error + '</p></div>');

                });

            }

        }

    });

</script>


查看完整回答
反對(duì) 回復(fù) 2023-08-11
  • 2 回答
  • 0 關(guān)注
  • 164 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)