복붙노트

[JQUERY] AJAX 성공에서 JSON 결과를 통해 jQuery를 루프?

JQUERY

AJAX 성공에서 JSON 결과를 통해 jQuery를 루프?

해결법


  1. 1.당신은 외부 루프를 제거하고 data.data와 이것을 대체 할 수 있습니다 :

    당신은 외부 루프를 제거하고 data.data와 이것을 대체 할 수 있습니다 :

    $.each(data.data, function(k, v) {
        /// do stuff
    });
    

    당신은 가까웠다 :

    $.each(data, function() {
      $.each(this, function(k, v) {
        /// do stuff
      });
    });
    

    외부 루프는 그 반복 할 수 있도록 당신은 객체의 배열을 가지고 / 매핑합니다. 내부 루프는 각각의 오브젝트 요소의 특성 반복 할.


  2. 2.또한해서 getJSON 함수를 사용할 수 있습니다 :

    또한해서 getJSON 함수를 사용할 수 있습니다 :

        $.getJSON('/your/script.php', function(data) {
            $.each(data, function(index) {
                alert(data[index].TEST1);
                alert(data[index].TEST2);
            });
        });
    

    이건 정말 ifesdjeen의 대답은 단지 새로운 표현이지만, 나는 그것이 사람들에게 도움이 될 수있다 생각했다.


  3. 3.당신이 파이어 폭스를 사용하는 경우, 단지 콘솔 (사용 F12 키)을 열고 밖으로이 시도 :

    당신이 파이어 폭스를 사용하는 경우, 단지 콘솔 (사용 F12 키)을 열고 밖으로이 시도 :

    var a = [
     {"TEST1":45,"TEST2":23,"TEST3":"DATA1"},
     {"TEST1":46,"TEST2":24,"TEST3":"DATA2"},
     {"TEST1":47,"TEST2":25,"TEST3":"DATA3"}
    ];
    
    $.each (a, function (bb) {
        console.log (bb);
        console.log (a[bb]);
        console.log (a[bb].TEST1);
    });
    

    그것이 도움이되기를 바랍니다


  4. 4.사람이 다른 사람이 붙어 들어 아약스 호출이 텍스트로 반환 된 데이터를 해석하기 때문에, 아마 작동하지 않습니다 - 즉, 아직 JSON 객체 아니다.

    사람이 다른 사람이 붙어 들어 아약스 호출이 텍스트로 반환 된 데이터를 해석하기 때문에, 아마 작동하지 않습니다 - 즉, 아직 JSON 객체 아니다.

    수동으로 parseJSON 명령을 사용하거나 단순히 데이터 유형을 추가하여 JSON 객체로 변환 할 수 있습니다 : 'JSON'속성을 당신의 아약스 호출합니다. 예를 들면

    jQuery.ajax({
        type: 'POST',
        url: '<?php echo admin_url('admin-ajax.php'); ?>',
        data: data, 
        dataType: 'json', // ** ensure you add this line **
        success: function(data) {
            jQuery.each(data, function(index, item) {
                //now you can access properties using dot notation
            });
        },
        error: function(XMLHttpRequest, textStatus, errorThrown) {
            alert("some error");
        }
    });
    

  5. 5.당신이 다른 배열 것 같은 JSON 배열에 액세스합니다.

    당신이 다른 배열 것 같은 JSON 배열에 액세스합니다.

    for(var i =0;i < itemData.length-1;i++)
    {
      var item = itemData[i];
      alert(item.Test1 + item.Test2 + item.Test3);
    }
    

  6. 6.이것은 내가 쉽게 모든 데이터 값을 볼에 해낸 것입니다 :

    이것은 내가 쉽게 모든 데이터 값을 볼에 해낸 것입니다 :

    var에 dataItems = ""; $ .Each (데이터 기능 (인덱스 정보 ItemData) { dataItems + = 인덱스 + ""+ 정보 ItemData + "\ n '; }); CONSOLE.LOG (dataItems);


  7. 7., jQuery.map 기능을 사용해보십시오지도 꽤 잘 작동합니다.

    , jQuery.map 기능을 사용해보십시오지도 꽤 잘 작동합니다.

    VAR mapArray = { "이 lastName": "성이 null 일 수 없습니다" "이메일": "이메일은 null 일 수 없습니다" "firstName을"은 "이름은 null 일 수 없습니다!" }; .MAP $ (mapArray, 기능 (발, 키) { 경고 ( "값은 :"+ 발); 경고 ( "키는 다음과 같습니다"+ 키); }); <스크립트 SRC = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js">


  8. 8.당신이 경고를하지 않을 경우, 즉 유 HTML을 원하는이며, 다음이 작업을 수행

    당신이 경고를하지 않을 경우, 즉 유 HTML을 원하는이며, 다음이 작업을 수행

    ...
        $.each(data, function(index) {
            $("#pr_result").append(data[index].dbcolumn);
        });
    ...
    

    참고 : 사용 "APPEND는"하지 "HTML은"다른 최종 결과는 당신이 당신의 HTML보기에 볼 수있을 것이다 것입니다

    다음 HTML 코드는 다음과 같이한다

    ...
    <div id="pr_result"></div>
    ...
    

    이 HTML로 렌더링하기 전에 당신은 또한 스타일 (추가 클래스) JQuery와에 div에 할 수 있습니다


  9. 9.나는 foreach는 대한 .MAP 사용합니다. 예를 들면

    나는 foreach는 대한 .MAP 사용합니다. 예를 들면

    success: function(data) {
      let dataItems = JSON.parse(data)
      dataItems = dataItems.map((item) => {
        return $(`<article>
                    <h2>${item.post_title}</h2>
                    <p>${item.post_excerpt}</p>
                  </article>`)
      })
    },
    

  10. 10.아래와 같이 JQuery와 아약스 통화 기능의 짧은 방법을 사용하는 경우, 반환 된 데이터는을 반복 할 수 있도록하기위한 JSON 개체로 해석 될 필요가있다.

    아래와 같이 JQuery와 아약스 통화 기능의 짧은 방법을 사용하는 경우, 반환 된 데이터는을 반복 할 수 있도록하기위한 JSON 개체로 해석 될 필요가있다.

    $.get('url', function(data, statusText, xheader){
     // your code within the success callback
      var data = $.parseJSON(data);
      $.each(data, function(i){
             console.log(data[i]);
          })
    })
    

  11. 11.I 배열에서 값을 찾는 ES2015 화살표 기능 부분이다

    I 배열에서 값을 찾는 ES2015 화살표 기능 부분이다

    const result = data.find(x=> x.TEST1 === '46');
    

    체크 아웃 Array.prototype.find () 여기


  12. 12.각각의 의지 작업을 $ .. 또 다른 옵션은 jQuery를 아약스 콜백 배열 결과입니다

    각각의 의지 작업을 $ .. 또 다른 옵션은 jQuery를 아약스 콜백 배열 결과입니다

    function displayResultForLog(result) {
      if (result.hasOwnProperty("d")) {
        result = result.d
      }
    
      if (result !== undefined && result != null) {
        if (result.hasOwnProperty('length')) {
          if (result.length >= 1) {
            for (i = 0; i < result.length; i++) {
              var sentDate = result[i];
            }
          } else {
            $(requiredTable).append('Length is 0');
          }
        } else {
          $(requiredTable).append('Length is not available.');
        }
    
      } else {
        $(requiredTable).append('Result is null.');
      }
    }
    
  13. from https://stackoverflow.com/questions/733314/jquery-loop-over-json-result-from-ajax-success by cc-by-sa and MIT license