2016-07-26 2 views
-2

여기에 이상한 오류가 발생했습니다. ID 이름으로 div를 정렬하려고합니다. 그것은 작품을 보이는Div를 ID 이름으로 정렬

https://jsfiddle.net/veeco/t3wu9tss/5/

...하지만 우리는 여기에 예제와 같이 새 ID를 추가 할 경우 우리는 ... 틀렸다 : 당신은 여기 좀 걸릴 수 있습니다

https://jsfiddle.net/veeco/t3wu9tss/4/

정렬이 망가 졌어. 유일한 차이점은 추가입니다.

<div id="Palu">Palu<br></div> 

왜 그런지 모르겠습니다. 그것은 이상하게 보입니다. 누군가 통찰력을 줄 수 있습니까? 이보십시오

var $divs = jQuery(".cabang div"); 
var alphabeticallyOrderedDivs = $divs.sort(function (a, b) { 
    return $(a).attr('id') > $(b).attr('id'); 
}); 
jQuery(".cabang").html(alphabeticallyOrderedDivs); 
+1

당신은 복사 질문에 코드를 붙여 넣어야. 그것은 사람들이 대답하려고 쉽게합니다. – afuous

+0

둘 모두 나를 위해 ... –

+0

[String.prototype.localeCompare()] (https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/String/localeCompare) – George

답변

2

:

당신은 String.prototype.localeCompare

,691을 사용할 수 있습니다 HTML

<div class="cabang"> 
    <div id="Pematangsiantar">Pematangsiantar<br></div> 
    <div id="Padang">Padang<br></div> 
    <div id="Bengkulu">Bengkulu<br></div> 
    <div id="Jambi">Jambi<br></div> 
    <div id="Cikarang">Cikarang<br></div> 
    <div id="Cirebon">Cirebon<br></div> 
    <div id="Pontianak">Pontianak<br></div> 
    <div id="Satui">Satui<br></div> 
    <div id="Samarinda">Samarinda<br></div> 
    <div id="Mataram">Mataram<br></div> 
    <div id="Palu">Palu<br></div> 

자바 스크립트 : 여기에 전체 코드를 볼 필요가 사람들을 위해

var $divs = jQuery(".cabang div"); 
 

 
var alphabeticallyOrderedDivs = $divs.sort(function (a, b) { 
 
    return String.prototype.localeCompare.call($(a).attr('id').toLowerCase(),$(b).attr('id').toLowerCase()); 
 
}); 
 

 
$(".cabang").html(alphabeticallyOrderedDivs);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div class="cabang"> 
 
     <div id="Pematangsiantar">Pematangsiantar<br></div> 
 
     <div id="Padang">Padang<br></div> 
 
     <div id="Bengkulu">Bengkulu<br></div> 
 
     <div id="Jambi">Jambi<br></div> 
 
     <div id="Cikarang">Cikarang<br></div> 
 
     <div id="Cirebon">Cirebon<br></div> 
 
     <div id="Pontianak">Pontianak<br></div> 
 
     <div id="Satui">Satui<br></div> 
 
     <div id="Samarinda">Samarinda<br></div> 
 
     <div id="Mataram">Mataram<br></div> 
 
     <div id="Palu">Palu<br></div> 
 
</div>

+0

안녕하세요 @ Jayesh Chitroda, 작동합니다! 꽤 비록 내가 String.protototype.localeCompare 실제로 작동하는 방법을 몰라서 놀랍다 ... –