2010-03-17 3 views
0

이 질문에 대한 정말 간단한 해결책이있을 수 있지만 나는 그것을 보지 못했습니다!동일한 ID를 사용하는 여러 jQuery UI 버튼

나는 목록이있는 페이지가 있습니다. 모든 항목에는 동일한 jquery UI 단추가 있습니다 (대화 상자 내부에 해당 항목이 목록에 추가됩니다). DB ID를 보유한 육아 DIV를 통해 항목을 식별합니다. 지금까지 그렇게 좋은 ...

문제는 목록의 첫 번째 버튼 만 작동합니다! 두 번째, 세 번째 버튼 등은 전혀 반응을 나타내지 않습니다. 버튼은 모두 ID가 동일합니다. 목록은 동적이며 모든 클릭과 동일한 액션이 트리거됩니다. 육아 ID 만 변경됩니다.

Heres는 디스플레이 부분 : 나는 JQuery와 1.4.2 JQuery와 UI를 1.8rc3 어떤 아이디어를 사용하고

$('#add-audio-file').click(function() { 
     assetID = $(this).parent('div').attr('id'); 
     pageID = $(this).parent('div').parent('div').attr('id'); 
     $.post(
      "modules/portfolio/serialize.php", 
      {id : pageID, assetid : assetID, do : "add-audio-file"}, 
       function(data, textStatus, xhr) { 
        $('#dialog-add-audio').dialog('close'); 
       } 
     ); 

    }); 

: 여기

<div id="2"> 
    <div id="56"> 
    <button id="add-audio-file" class="ui-button ui-state-default ui-corner-all">betty_2.mp3</button> 
    </div> 
</div> 

<div id="2"> 
    <div id="57"> 
    <button id="add-audio-file" class="ui-button ui-state-default ui-corner-all">betty_3.mp3</button> 
    </div> 
</div> 

그리고는 JS 부분 온다?

답변

8

버튼 모든 요소의

id 식별자입니다 동일한 ID를 가지고, 두 개 이상의 요소가 설정할 수 없습니다. 대신 버튼 class을 사용하고 그 후에 작동하는지보십시오.

가 JQuery와 - UI를 자바 스크립트에서
<input type="button" value="MyButton1" /> 
<input type="button" value="MyButton2" /> 
... 
<input type="button" value="MyButtonN" /> 

:

search for: $("#button").button(); 
then replace or add $('[type="button"]').button();" 

$("#button").button(); 
$('[type="button"]').button(); 
+0

그게 효과가 있었어 ... illy me! –

+0

@ 마크 놀란 : 좋은 소식 이네요. :) – Sarfraz

2

ID가 중복 된 문서는 좋지 않은가요?

+0

당신이 바로 당신이 HTML에 버튼 요소

을 넣을 때 –

0

작동합니다 ...
관련 문제