2012-10-15 2 views
0

이 값은 table이며 td에서 함수 계산기를 사용할 수 없습니다.함수 계산기에 대한 Jquery 이벤트

스크립트가 완벽하게 작동하지만 셀의 번호를 편집 할 때 (입력 번호를 얻기 위해 셀을 클릭하기 만하면) 총 결과가 표시되지 않습니다. 내 jeditable 플러그인에 어떤 이벤트를 적용해야하는지 설명 할 수 있습니까? 그것을 달성하기 위해 아마도 다른 방법이나 더 나은 방법을 알고 있습니까?

감사

답변

0

당신은 callback 이벤트를 사용하여 합계를 계산하기 위해 적절한 이벤트 핸들러를 할당해야합니다. 작동하는이 코드를 확인하고 필요하다고 생각되면 추가 작업을 추가하십시오. 코드가 매우 이상하지만 어쨌든 작동합니다. 함수 tally은 전역 함수로 onrender$(function(){ ... }); 블록 외부에 정의해야합니다.

가 이
<script type="text/javascript"> 
    function tally (selector) { 
     $(selector).each(function() { 
      var total = 0, 
      column = $(this).siblings(selector).andSelf().index(this); 
      $(this).parents().prevUntil(':has(' + selector + ')').each(function() { 
      total += parseFloat($('p#sum:eq(' + column + ')', this).html()) || 0; 
      }) 
      $(this).html(total); 
    }); 
    } 

    $(function() { 
     tally('p#subtotal'); 
     tally('p#total'); 
    }); 
</script> 



<script type="text/javascript" charset="utf-8"> 
$(function() { 
    $('.editable_number').editable(function(value, settings) { return(value); }, { 
     type : 'number', 
     style : "inherit", 
     callback: function() { 
     tally('p#subtotal'); 
     tally('p#total'); 
     } 
    } 
    ); 

    $('.editable_textarea').editable(function(value, settings) { return(value); }, { 
    type : 'textarea', 
    width: '200', 
    height: '20', 
    submit : 'OK', 
    style : "inherit" 
}); 
}); 
</script> 
+0

감사 반사, 내가 밖으로 시도하고 정확히 내가 의미로 작동, 당신은 내가 많이 향상시킬 필요가, 내 코드가 좀 지저분 알고 은데하지만, 코드의 단지 몇 행과 당신 당신이 한 일을 아주 잘 설명해주었습니다. 감사합니다. – Koala7

+0

다행입니다. :) – Reflective

관련 문제