2010-08-16 7 views
2

테이블에 pricelist를 생성하는 PHP 스크립트가 있습니다. 생성 된 테이블의 예 :테이블 셀에 계산 수행하기

<table> 
    <thead> 
    <tr> 
    <th></th> 
    <th>100</th>  
    <th>+100</th>   
    </tr> 
    </thead> 
    <tbody> 
    <tr> 
      <th>A5<span>210x148</span></th> 
      <td>€65.00</td> 
      <td>€8</td> 
     </tr> 
     <tr> 
      <th>A4<span>297x210</span></th> 
      <td>€75.00</td> 
      <td>€16</td> 
     </tr>  
    </tbody> 
</table> 

기본적으로 내가하고 싶은 것은 VAT를 추가하는 버튼입니다. 따라서 : 가격 셀에서 값을 가져 와서 21 %를 추가하고 원래 값을 대체하십시오. 버튼을 다시 클릭하면 다시 시작됩니다.

제 문제는 jquery에 익숙하지 않아 셀당 값을 추출하고 다시 작성하는 방법을 알 수 없다는 것입니다. 셀에 ID를 추가하면 원하는 결과를 얻을 수 있지만 모든 셀에 대해 ID를 수행하는 방법을 파악할 수는 없습니다. 내가 일할 수없는 또 다른 일은 계산을하기 위해 통화 기호를 벗겨내는 것입니다.

도움을 주시면 감사하겠습니다.

$('price').each(function(index) { 
    vat = $(this).text().replace("$", "") * 1.21; 
    $(this).text() = vat; 
    }); 

안된 그러나 희망이 아이디어를 전달 :

+5

나는 당신이 있어야한다고 생각하지 않습니다. 그 계산을 클라이언트 측에서 수행합니다. 생성 도중 제공되었거나 표시/숨기기위한 방법 만 있으면 더 좋을 것입니다. – Fosco

+1

+1, 테이블을 아약스로 설정하고'? vat = hidden' 플래그를 설정하는 것이 더 좋을 것입니다 –

+0

안녕하세요, Maikelv, 응답이 유용하다면 하나를 대답으로 표시하십시오. – Mauro

답변

2

한 가지 방법은 요소의 컬렉션을 클래스 이름을 그 '가격'세포에게

<td class='price'> 

다음 루프를 제공하는 것입니다.

당신이

<td class='priceCell'> 

같이 부가가치세를 계산하는 가격이 다음 첫 번째 버튼을 누르면

$('priceCell').each(function(index) { 
    $(this).text() = calculateVAT($(this).text()); 
    }); 

calculateVAT에 같은 일을 볼 수있는 곳 당신은 모든 테이블의 셀에 클래스를 추가 할 수 있습니다

+1

''허? ' ' –

+0

oops; 수정 됨. – LesterDove

+0

클래스 이름을 수정했습니다 :-), 대신에'parseFloat'을 사용할 수 있습니다. 이것은 당신이 가지고있는 통화/형식을 추측 할 필요가 없다는 것을 의미합니다. –

1

VAT를 계산하는 함수 자바 스크립트입니다. 이 솔루션은 반올림 될 수있는 숫자에 대해 부동 소수점 계산을 수행하므로 또 다른 가능한 해결책은 VAT가 추가 된 총계가있는 숨겨진 열을 추가하고 단추가 두 열 사이를 전환하는 것입니다.

+1

저는 숨겨진 열 솔루션을 좋아합니다. 왜냐하면 PHP로 대부분의 프로그래밍을 할 수 있기 때문입니다. 내가 그것을 시도하자. – Maikelv

+1

숨겨진 열은 실제로 모든 클라이언트 측 계산 : #) 절약 매우 좋은 아이디어입니다 –

관련 문제