2013-01-21 2 views
0

다음과 같은 페이지가 있습니다. 일부 데이터는 데이터베이스에서 가져온 것이고 데이터베이스 필드 옆에는 양식 필드가 있습니다. 모두 동적이므로 모든 필드에 대한 유효성 검사가 필요합니다. 텍스트 필드에서 Excel 기능을 사용하려면 어떻게해야합니까?

는 위의 예에서 클라이언트 제품에서이 http://jsbin.com/efinak/22/edit

Total Spent Cost: ((t1*100+t2*200)*x%+(t3*110)*y%)spent for A + spent for B 

Client : A 

product  No of Hours  Avg Rate/Hour  Cost 
A1     t1    100    t1*100 
A2     t2    200    t2*200 

Total Cost:           t1*100+t2*200 
Percentage(%):           x 
Spent Cost:           (t1*100+t2*200)*x% 

Client : B 

product  No of Hours  Avg Rate/Hour  Cost 
B1     t3    110    t3*100 


Total Cost:           t3*110 
Percentage(%):          y 
Spent Cost:           (t3*110)*y% 

을 확인하여 주시기 바랍니다 및 시간의 어떤 데이터베이스에서 올 것이다. 나는 평균 요금/시간을위한 텍스트 필드와 비용을위한 텍스트 필드를 유지했다.

내가 왜 질문에서 언급 한 funcitonality의 종류는 내가 여기에서 설명 할 것이다. 평균 속도/시간 텍스트 필드를 설정한다고 가정하면 자동 비용은 리디렉션없이 계산되어야합니다. 동일한 방법으로 비용을 설정하면 평균 시간당 시간이 자동으로 계산되어야합니다.

일단 비용이 계산됩니다. 총 비용은 자동으로 계산되어야합니다. 또한 일부 비율로 사용자가 설정하는 텍스트 입력란도 있습니다. 그것을 바탕으로 지출 비용을 계산해야합니다.

모든 클린트에이 작업이 필요합니다. 모든 클린트의 지출 된 비용이 자동으로 계산 된 후에는 총 지출 된 비용을 즉시 계산해야합니다.

아이디어가 필요하면 가능하면 도움이 필요합니다.

답변

1

이 경우 jquery 스크립트를 사용할 수 있습니다. 나는 당신이 이것의 뒤에 기본적인 논리를 알 수있는 짧은 예를 든다. 네 개의 필드가 있다고 가정 해보십시오. 적절한 클래스 이름을 가진 A, B, C 및 D.

여기서 A와 B는 데이터베이스에서 왔으며 C는 입력 필드이고 D는 최종 답안의 입력 필드입니다. 다음과 같이 D를 자동으로 계산할 수 있습니다.

$(document).ready(function() { 
    $('.class_C').live('change', function() { 
      var A = $('.class_A').val(); 
      var B = $('.class_B').val(); 
      var C = $('.class_C').val(); 

      // Calculate D as per A, B and C. 
      var D = A + B * C/50; 

      // Put new value in to D field. 
      $('.class_D').val(D); 
    }); 
}) 

편집 :

확인 : http://jsbin.com/efinak/27/edit

$('input[name="quantity"]').change(function() { 
    var total = 0; 
    $('input[name="price"]').map(function(i,n) { 
    total += Number(n.value); 
    }); 
    $('input[name="total"]').val(total); 
}); 
+0

h ey 내 jsfiddle 링크를 확인할 수 있습니까 –

+0

http://jsbin.com/efinak/27/edit를 확인하십시오. 필요한 것은 $ .map 함수입니다. – user1995997

+0

감사하지만 다른 기능이 필요합니다 ....... –

1

각 클라이언트에 대해 동일한 집계 함수가있는 경우, javascript 클래스를 작성하여 각 테이블에 첨부하여 계산을 입력 필드의 변경 이벤트에 바인딩 할 수 있습니다.

당신은 JQuery와의 같은 종류의 플러그인을 만들 수

:

당신이 당신을 수 있습니다 각 행 항목에 클래스를 추가 할 것이다 (내가 가까이를 마무리로 돌아와,하지만 시작하지 않았다) jquery를 사용하여 DOM에서 더 쉽게 식별 할 수 있지만 궁극적으로 클리너가됩니다.

+0

내 jsfiddle 링크 .......... –

+0

내가 무엇을 의미하는지 보여주기 위해 편집 확인 – Ethan

+0

내가 정성 들여 수 이 솔루션을 사용하는 데 관심이 있다면 – Ethan

관련 문제