2013-03-15 3 views
2

내 *의 .aspx 페이지 (메인 페이지) 발생하지 :부분보기 클릭 이벤트

function getEmployeeHours(employeeId,year,month) { 
$('#clocked-details').load('/Employees/GetEmployeeClockedHours/',{ 'employeeId': employeeId,'year': year,'month': month }); 
    }; 

내 부분보기를 *의 .ascx : 나는 부분보기를 accsess 필요

<td> 
    <button id="btnSave" type="button" class="actionButton"> 
    Save</button> 
    </td> 

코드 이상으로 btn 저장 기본보기에서 클릭 이벤트를 트리거합니다.

아래의 코드는 기본보기 내부에 작성했습니다.

$('#btnSave').off('click').on('click', function() { 

     var yearValue = $("#year").val(); 
     var monthValue = $("#month").val(); 

     $.ajax({ 
      url: "/Employees/UpdateEmployeeClockedHoursByProvider", 
      type: 'POST', 
      cache: false, 
      data: { employeeId: employeeId, year: yearValue, month: monthValue }, 
      success: function (result) { 

      }, 
      error: function (xhr, ajaxOptions, thrownError) { 
       alert(xhr.status); 
       alert(thrownError); 
      } 
     }); 

     return false; 
    }); 

그러나 fire.Here 나는 비동기 내 부분보기를로드 부하 JQuery와 방법을 사용하고 있지 않습니다.

제 질문은 어떻게 부분 뷰의 클릭 이벤트를 발생시켜야합니까?

+0

부분보기 또는 기본보기에서 단추 클릭 이벤트가 발생합니까? –

+0

@SivaGopal 나는 그 사건을 두 곳 다 배치했다. 그러나 행운은 없나? 어떤 생각? – Sampath

+0

기본보기에서 스크립트를 유지하면서 jquery의 ("#btnSave") live ("click") 이벤트를 시도 했습니까? –

답변

1

버튼을 containging UserControl을 동적으로로드되고 있기 때문에, JQuery와의 ("#btnSave").live("click"){...} 이벤트를 사용할 수 있습니다. 따라서 "라이브 (..)"에 대해 지정된 선택기와 일치하는 컨트롤이 나타나면 이벤트가 자동으로 유선 연결됩니다.

희망이 도움이됩니다.

+0

답해 주셔서 감사합니다. – Sampath

6

html이 동적으로 페이지에로드되기 때문에 DOM 쿼리에 더 많은 컨텍스트를 제공해야합니다.

시도해보십시오. 컨트롤이 미래에 DOM에 추가를 추적 할 수있는 기본보기에서 스크립트를 유지하면서

$(document).on('click', '#bntSave', function(){ 
    //do stuff 
});