2014-08-27 5 views
0

특정 div를 클릭하면 JavaScript 함수가 호출되어 일부 데이터가 데이터베이스에 추가됩니다. 문제는 함수가 for 루프에 있다는 것입니다. 그래서 클릭하면 성공 상자가 다시 나타나고, 루프 밖으로 메서드를 놓으면 작동하지 않습니다. 당신이 당신의 div의에게 고유 ID를주는 경우에 당신이 좋아하는 그들에게 전화를 시도 할 수 있습니다,루핑 경고 상자가 표시됩니다.

<div id="itemskill"> 
    <div class="skilltext" id="skilltext_1301" value="1301">Bourse</div> 
    <div id="counter" class="plus_1301" em="1301" sk="82" style="">+</div> 
</div> 

<div id="itemskill"> 
    <div class="skilltext" id="skilltext_1301" value="1301">Finance</div> 
    <div id="counter" class="plus_1301" em="1301" sk="83" style="">+</div> 
</div> 
+8

부수적이지만 중요 : HTML의 __ID는 고유해야합니다 .__ – Satpal

답변

0

:

$("#skilltext_1301").click(function() { 
    var sk = $(this).attr("sk"); 
    addSkillEndo(sk); 
}); 

또는를 여기

for (i = 1; i <= data.length; i++) { 
var objSkills = JSON.parse(data); 
if (objSkills.skills[i - 1].idemetteur != <?php echo $me; ?>) { 
    $("div[class^='plus_']").click(function() { 
     var sk = $(this).attr("sk"); 
     addSkillEndo(sk); 
    }) 
} 


} 

이 사업부의 예 :이 코드입니다 다음과 같이 시도하십시오.

$(document).ready(function(){ 
    $("div[class^='plus_']").click(function() { 
     var sk = $(this).attr("sk"); 
     addSkillEndo(sk); 
    }); 
}); 

for (i = 1; i <= data.length; i++) { 
    var objSkills = JSON.parse(data); 
    if (objSkills.skills[i - 1].idemetteur != <?php echo $me; ?>) { 
     // do anything 
    } 
} 

te : for 루프를

for (i=0; i<data.length; i++){} 

으로 변경하고 if 문에서 "- 1"을 지울 수 있습니다.

관련 문제