div가 동적으로 생성 될 때 div 정렬이 작동하지 않음

사용자 6790086

다음 스크립트를 사용하여 특정 속성 (성별, 수준, 이름 등)으로 표시된 속성으로 div 목록을 정렬하려고합니다.

html :

<div id="sortThis" class="col-xs-12 alert-container">
    <div id="1" class="container-element sortable box box-blue" data-gender="1" data-level="4" data-name="AAA">   <h3>AAA</h3><div class="panel-body">AAA is resp</div>
    </div>
    <div id="2" class="container-element sortable box box-pink" data-gender="2" data-level="3" data-name="DDD"><h3>DDD</h3><div class="panel-body">DDD is a s</div>
    </div>
    <div id="3" class="container-element sortable box box-blue" data-gender="1" data-level="2" data-name="FFF"><h3>FFF</h3><div class="panel-body">FFF has mad</div>
    </div>
    <div id="4" class="container-element sortable box box-pink" data-gender="2" data-level="4" data-name="CCC"><h3>CCC</h3><div class="panel-body">CCC has ma</div>
    </div>
    <div id="5" class="container-element sortable box box-pink" data-gender="2" data-level="2" data-name=EEE><h3>EEE</h3><div class="panel-body">EEE is a f</div>
    </div>
    <div id="6" class="container-element sortable box box-blue" data-gender="1" data-level="3" data-name="BBB"><h3>BBB</h3><div class="panel-body">BBB is an ou</div>
    </div>
</div>

<button id="sLevel" class="LbtnSort">Sort by Level</button><br/>
<button id="sGender" class="GbtnSort">Sort by Gender</button><br/>

js :

var LdivList = $(".box");
LdivList.sort(function(a, b){ 
return $(a).data("level")-$(b).data("level")
});

var GdivList = $(".box");
GdivList.sort(function(a, b){ 
return $(a).data("gender")-$(b).data("gender")
});


/* sort on button click */
$("button.LbtnSort").click(function() {
$("#sortThis").html(LdivList);
});

/* sort on button click */
$("button.GbtnSort").click(function() {
$("#sortThis").html(GdivList);
});

.sortable div가 정적 인 경우이 jfiddle이 표시하는 것처럼 정렬이 잘 작동 하지만 #sortable div (예 : .sortable div)의 내용이 동적으로 생성되면 (이 경우 양식 제출의 결과), 정렬 버튼을 누르면 #sortable div의 전체 내용이 사라지고 작동하지 않는 것 같습니다.

도움이나 제안을 주시면 감사하겠습니다.

편집 : 목록의 동적 생성을위한 코드는 다음과 같습니다. 효과적으로 정렬 된 항목 목록에서 데이터를 가져와 출력하는 AXAX 양식 제출입니다.

    $('#formStep2').submit(function(event) {
    // get the form data
    var studentArray = [];

    $(".listbox li").each(function() {
        studentArray.push({
            'name': ($(this).text()),
            'gender': ($(this).closest('ol').attr('id')).substr(0, 1),
            'level': ($(this).closest('ol').attr('id')).substr(2, 3),
            'topic': ($('input[name=topic]').val())
        })
    });
    var studentString = JSON.stringify(studentArray);
    console.log(studentString);
    var formData = {
        'students': studentString,
    };
    // process the form
    $.ajax({
            type: 'POST', // define the type of HTTP verb we want to use (POST for our form)
            url: 'process_step2.php', // the url where we want to POST
            data: formData, // our data object
            dataType: 'json', // what type of data do we expect back from the server
            encode: true
        })
        // using the done promise callback
        .done(function(data) {

            if (!data.success) {
                // error handling to go here.....

            } else {
                $('.alert-container').empty();
                var obj = JSON.parse(data.message);

                //sort the array alphabetically by name (default status)
                var test = obj.sort(function(a,b){
                    var lccomp = a.name.toLowerCase().localeCompare(b.name.toLowerCase());
                    return lccomp ? lccomp : a.name > b.name ? 1 : a.name < b.name ? -1 : 0;
                });

                console.log(test);

                var i=0;
                test.forEach(function(st) {
                    console.log(st['name']);
                    var gen = (st['gender'] == 1) ? "blue" : (st['gender'] == 2) ? "pink" : NULL;
                    $('.alert-container').append('<div id="' + (i+1) + '" class="container-element sortable box box-' + gen + '" data-gender="' + st['gender'] + '" data-level="' + st['level'] + '" data-name="' + st['name'] + '"><h3>' + st['name'] + '</h3><div class="panel-body"><div class="col-xs-9"><i class="fa fa-quote-left fa-3x fa-pull-left fa-' + gen + '" aria-hidden=:true"></i>' + st['comment'] + '</div></div></div>');
                    i++;
                });
                // jump to the next tab
                var $active = $('.wizard .nav-tabs li.active');
                $active.next().removeClass('disabled');
                nextTab($active);
            }
        })
        // using the fail promise callback
        .fail(function(data) {
            // show any errors
            // best to remove for production
            console.log(data);
        });
    // stop the form from submitting the normal way and refreshing the page
    event.preventDefault();
});
알리 셰이크 포르

코드와 함께 LdivList 및 GdivList를 인라인으로 정의하므로 DOM 준비에 정의됩니다. 함수 내에서 정의를 래핑하고 클릭시 호출해야합니다.

$(document).ready(function(){
  $("button.LbtnSort").click(function() {
  $("#sortThis").html(GenerateLdivList);
  });

  /* sort on button click */
  $("button.GbtnSort").click(function() {
  $("#sortThis").html(GenerateGdivList());
  });
});


function GenerateLdivList(){
  var LdivList = $(".box");
  LdivList.sort(function(a, b){ 
  return $(a).data("level")-$(b).data("level")
  });
}

function GenerateGdivList(){
  var GdivList = $(".box");
  GdivList.sort(function(a, b){ 
  return $(a).data("gender")-$(b).data("gender")
  });
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

동적으로 생성 될 때 contenteditable div에서 작동하지 않는 초점

분류에서Dev

자바로 동적으로 생성 될 때 JSF commandButton이 작동하지 않음

분류에서Dev

UIButton이 동적으로 생성 될 때 강조 표시되지 않음

분류에서Dev

폴리머 철망은 노드가 동적으로 생성 될 때 작동하지 않습니다.

분류에서Dev

XMLHttpRequest 객체가 생성 될 때 document.write ()가 작동하지 않음

분류에서Dev

루프에서 생성 될 때 JQuery 버튼 및 슬라이더가 작동하지 않음

분류에서Dev

동적으로 생성 된 동일한 div에서 jQuery가 작동하지 않음

분류에서Dev

Div 내부에 양식을 추가 할 때 세로 정렬이 작동하지 않음

분류에서Dev

양식이 동적으로 생성 될 때마다 올바른 div를 찾는 방법을 모름

분류에서Dev

click () 메서드가 동적으로 생성 될 때 앵커에서 클릭 이벤트를 트리거하지 않음

분류에서Dev

동적으로 추가 될 때 잘못 정렬 된 이미지

분류에서Dev

div가 스크롤 될 때 감지가 작동하지 않습니다.

분류에서Dev

크기가 간접적으로 변경 될 때 <div> 전환이 트리거되지 않음

분류에서Dev

DIV 내에서 DIV 정렬이 작동하지 않음

분류에서Dev

동적으로 생성 된 div에서 정렬 가능한 JQuery

분류에서Dev

CSS : div의 세로 정렬이 작동하지 않음

분류에서Dev

콘텐츠가 확장 될 때 iframe이 div 아래로 밀어 내지 않음

분류에서Dev

페이지가로드 될 때 jQuery load ()가 작동하지 않음

분류에서Dev

Div는 자체적으로 잘 작동하지만 프로젝트에 통합 될 때는 작동하지 않습니다.

분류에서Dev

프로그램이 실행될 때 Tkinter 버튼이 활성화 됨-Lambda가 작동하지 않음

분류에서Dev

파이 게임 마스크가 개체로 생성 될 때 작동하지 않습니까?

분류에서Dev

CSS가 적용될 때 라디오 버튼 클릭이 작동하지 않음

분류에서Dev

다른 페이지로 호출 될 때 jQuery가 작동하지 않음

분류에서Dev

인스턴스가 서버에서 실행될 때 Winform TopMost 속성이 제대로 작동하지 않음

분류에서Dev

SSH 서버가 작동하지 않음 (중지 될 때까지 다시 생성됨)

분류에서Dev

두 div가 플로팅 될 때 div의 너비 설정 (자동)

분류에서Dev

<use>를 사용하여 동적으로 생성 할 때 SVG <animate>가 작동하지 않음

분류에서Dev

onKeyDown이 구현 될 때 한 손가락 아래로 작동하지 않음

분류에서Dev

Cycle2 Carousel이 DIV에있을 때 작동하지 않음

Related 관련 기사

  1. 1

    동적으로 생성 될 때 contenteditable div에서 작동하지 않는 초점

  2. 2

    자바로 동적으로 생성 될 때 JSF commandButton이 작동하지 않음

  3. 3

    UIButton이 동적으로 생성 될 때 강조 표시되지 않음

  4. 4

    폴리머 철망은 노드가 동적으로 생성 될 때 작동하지 않습니다.

  5. 5

    XMLHttpRequest 객체가 생성 될 때 document.write ()가 작동하지 않음

  6. 6

    루프에서 생성 될 때 JQuery 버튼 및 슬라이더가 작동하지 않음

  7. 7

    동적으로 생성 된 동일한 div에서 jQuery가 작동하지 않음

  8. 8

    Div 내부에 양식을 추가 할 때 세로 정렬이 작동하지 않음

  9. 9

    양식이 동적으로 생성 될 때마다 올바른 div를 찾는 방법을 모름

  10. 10

    click () 메서드가 동적으로 생성 될 때 앵커에서 클릭 이벤트를 트리거하지 않음

  11. 11

    동적으로 추가 될 때 잘못 정렬 된 이미지

  12. 12

    div가 스크롤 될 때 감지가 작동하지 않습니다.

  13. 13

    크기가 간접적으로 변경 될 때 <div> 전환이 트리거되지 않음

  14. 14

    DIV 내에서 DIV 정렬이 작동하지 않음

  15. 15

    동적으로 생성 된 div에서 정렬 가능한 JQuery

  16. 16

    CSS : div의 세로 정렬이 작동하지 않음

  17. 17

    콘텐츠가 확장 될 때 iframe이 div 아래로 밀어 내지 않음

  18. 18

    페이지가로드 될 때 jQuery load ()가 작동하지 않음

  19. 19

    Div는 자체적으로 잘 작동하지만 프로젝트에 통합 될 때는 작동하지 않습니다.

  20. 20

    프로그램이 실행될 때 Tkinter 버튼이 활성화 됨-Lambda가 작동하지 않음

  21. 21

    파이 게임 마스크가 개체로 생성 될 때 작동하지 않습니까?

  22. 22

    CSS가 적용될 때 라디오 버튼 클릭이 작동하지 않음

  23. 23

    다른 페이지로 호출 될 때 jQuery가 작동하지 않음

  24. 24

    인스턴스가 서버에서 실행될 때 Winform TopMost 속성이 제대로 작동하지 않음

  25. 25

    SSH 서버가 작동하지 않음 (중지 될 때까지 다시 생성됨)

  26. 26

    두 div가 플로팅 될 때 div의 너비 설정 (자동)

  27. 27

    <use>를 사용하여 동적으로 생성 할 때 SVG <animate>가 작동하지 않음

  28. 28

    onKeyDown이 구현 될 때 한 손가락 아래로 작동하지 않음

  29. 29

    Cycle2 Carousel이 DIV에있을 때 작동하지 않음

뜨겁다태그

보관