2011-04-21 9 views
0

어떤 이유로 asp.net 하이퍼 링크가 jquery와 작동하지 않습니다. 어떤 제안?asp 하이퍼 링크가 jquery에서 작동하지 않습니다.

<asp:HyperLink runat="server" ID="hypeDeleteBaseline" Text="Delete Baseline" /> <br/> 

//Delete Baseline information 
jQuery('[id$="hypeDeleteBaseline"]').click(function (e) { 
    e.preventDefault();  
    var equipid = "<%=Equipment.ID%>"; 
    var inspectionid = jQuery('[id$="ddInspectionDate"]').val(); 
    deleteBaseline(equipid, inspectionid); 
}); 

도움 주셔서 감사합니다.

답변

1

선택자가 약간 이상합니다. 시도해 보셨습니까 :

jQuery('#hypeDeleteBaseline').click(...) 

또한 렌더링 된 HTML을 확인 했습니까? 종종 컨트롤에 설정 한 ID는 실제로 HTML에서 렌더링되는 ID가 아닙니다. 이 같은 것이 작동 할 수도 있습니다.

jQuery('<%=hypeDeleteBaseline.ClientId%>').click(...) 

마지막으로, 자바 스크립트 클래스에 많은 컨텍스트를 포함하지 않았습니다. 당신이 인터넷 4 일 경우 설정,

jQuery('#<%=hypeDeleteBaseline.ClientID%>') 

또는 : HTML에서 렌더링하지 parametre으로 시도로 당신은 클라이언트 ID를 얻을 필요가

<script type="text/javascript"> 
    jQuery(function(){ 
     //Delete Baseline information 
     //... 
    }); 
</script> 
0

: 확인이 문서 준비 핸들러 내부의 확인 하이퍼 링크의 ClientIDMode="Static"은 렌더 ID를 변경하지 않습니다.

0

내 코드가 잘못되었습니다. asp 하이퍼 링크가 jquery.load ajax 호출을 통해로드되었습니다. 그래서 내가 추가 한로드에 대한 콜백 함수에 대해서

jQuery('[id$="hypeDeleteBaseline"]').click(function (e) { 
     e.preventDefault();  
     var equipid = "<%=Equipment.ID%>"; 
     var inspectionid = jQuery('[id$="ddInspectionDate"]').val(); 
     deleteBaseline(equipid, inspectionid); 
    }); 

그리고 지금은 완벽하게 작동합니다. 모든 제안을 주셔서 감사합니다.

관련 문제