2011-06-13 2 views
0

jQuery를 처음 사용하고 변수를 jQuery UI 대화 상자에 전달하는 데 어려움이 있습니다. "예"를 클릭하면 브라우저가 localAuthorityDelete로 리디렉션하고 적절한 레코드를 제거해야합니다.변수를 jQuery UI 대화 상자에 전달

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $('#deleteButton').click(function(){ 
      $('#deleteText').dialog({ 
      modal:true, 
      resizable: false, 
      buttons: { 
       'Yes': function() { 
        window.location = "../php/localAuthorityDelete.php?laID=" 
        $(this).dialog('close'); 
       }, 
       Cancel: function() { 
        $(this).dialog('close'); 
       } 
      },         
      }); 
     }); 
    }); 
</script> 

나는 많은 삭제 버튼이 있습니다

<input type="button" id="deleteButton" name="deleteButton" value="Delete"> 

는 각 버튼 옆에 제거해야 기록에 테이블에 삭제합니다. 나는 이것을 다음과 같이하고 있었다 :

<a href="localAuthorityDelete.php?laID=<?php echo $row_laID['laID'];?>">Delete</a> 

그러나 jQuerys 대화 상자를 이용해야한다. 누군가가 나를 도울 수 있다면 나는 매우 위대 할 것이다. 하나의 변수를 사용하지만 실행되지 않는 함수에서 위의 JS를 래핑하려고했습니다.

도움 주셔서 감사합니다. 당신이 고유해야하는 HTML 요소 그러나 ID를 여러 deleteButtons을 가지고있는 것처럼

마이크

+3

웹 응용 프로그램에서 GET을 사용하여 상태를 변경하지 마십시오. 해당 페이지가 보호되지 않고 spidered되면, 삭제 된 레코드가 많이 생깁니다. –

답변

1

보인다.

<input type="button" 
     id="delete-<?php echo $row_laID['laID'];?>" 
     class="deleteButton" 
     name="deleteButton" 
     value="Delete" 
/> 

지금 당신이 요소의 ID가 삭제 버튼의 id에서 삭제 될 수 있습니다 : 그래서 다음과 같이 삭제 버튼을 렌더링하는 방식을 변경합니다. 클릭 핸들러는 이제 #deleteButton 대신 .deleteButton에 바인딩되어야합니다.

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $('.deleteButton').click(function(){ 
      var id = this.id.replace(/[^0-9]/g, ""); 
      $('#deleteText').dialog({ 
       modal:true, 
       resizable: false, 
       buttons: { 
        'Yes': function() { 
         window.location = "../php/localAuthorityDelete.php?laID=" + id; 
         $(this).dialog('close'); 
        }, 
        Cancel: function() { 
         $(this).dialog('close'); 
        } 
       } 
      }); 
     }); 
    }); 
</script> 
+1

시간 내 주셔서 감사합니다. 그건 잘된거야. – user795954

관련 문제