2013-03-22 5 views
0

아래 코드에서 최종 경고()에 새 값을 가져 오는 이유는 무엇입니까?하지만 양식 제출시 이전 값 (그리고 방화 쇠 숨겨진 필드를 볼 때)은 어떻게됩니까? 양식 태그 내부숨겨진 양식 필드 값이 실제로 변경되지 않았습니다.

숨겨진 필드 요소 :

<input type="hidden" id="shipping_1" name="shipping_1" value="3.99"> 
ShipTo 드롭 다운 메뉴를 선택하면, jQuery를 필드 값을 업데이트하는 데 사용됩니다

:

$('#ShipSelect').change(function(e) { 
    var ss = $('#ShipSelect').val(); 
    if (ss=='International') { 
     alert("International orders add $10 S&H"); 
     ship1 = ($('#shipping_1').val())*1 + 10; 
     alert('Shipping_1 val is now: ' + ship1); 
     $('#shipping_1').val(ship1); 
     alert('Reading the field directly: ' + $('#shipping_1').val()); 
    } 
}); 

알림 메시지 $ (10)라는이 추가되었습니다 쇼 숨겨진 필드 값. 여태까지는 그런대로 잘됐다. BuyNow 버튼을 누를 때 DOM을 방화범으로 (또는 크롬 DevTools로 모드에서) 볼 그러나

AND/OR 상기 shipping_1 필드는 이전 값 ($ 10 단편)이다.


UPDATE

: 나는 정확히 내 문제를 설명 this promising post을 보았지만,이 솔루션은 작동하지 않았다. 이것은 그들이 무엇을 제안이다 :

document.form_name.field_name.value = your_value 

을 따라서, 나는이 줄에서 주석 :

$('#shipping_1').val(ship1); 

과 함께 대체 :

document.paypal_cart.shipping_1.value = ship1; 

결과 내가 지금 무슨 다르지 않습니다 . 이전 값은 여전히 ​​제출되고 (방화 녀와 함께 볼 때 표시됩니다). 변경된 값을 폼이나 다른 것으로 "고칠"때 어떻게 든 .on()을 사용해야합니까?

+9

왜 당신은 운송 비용을 계산하기 위해 클라이언트에 의존 닫기 괄호를 놓쳤다 생각을 조금 단순화? JavaScript 디버거를 사용하여이 숨겨진 필드 값을 0으로 설정하면 어떻게됩니까? 배송비를 청구하지 않겠습니까? – cdhowie

+2

당신은 소스를보고 javascript로 동적으로 수행 된 변경 사항을 볼 수 없지만 콘솔을 사용하는 경우 값 변경이 표시되어야합니다. – adeneo

+0

'$ ('# shipping_1'). attr ('value', ship1);을 테스트하십시오. 내가 잘못 본 것이 없다. –

답변

0

http://jsfiddle.net/PeT66/1/

그것은 당신이

$('#ShipSelect').change(function(e) { 
    var ss = $('#ShipSelect').val(); 
    alert("International orders add $10 S&H"); 
    ship1 = ($('#shipping_1').val())*1 + 10; 
    alert('Shipping_1 val is now: ' + ship1); 
    $('#shipping_1').val(ship1); 
    alert('Reading the field directly: ' + $('#shipping_1').val()); 
}); 
+0

답변 해 주셔서 감사합니다. 내 게시물은 스 니펫이었고 닫는');'을 제공하지 못했지만 실제 코드에 있습니다 (훨씬 더 아래쪽에 있습니다). 나는 그것을 고치기 위해 질문을 업데이트했다. 당신의 대답에 관해서는, 지금 제가 무엇을 제공했는지 정확히 똑같이 작동합니다. – gibberish

+0

숨겨진 필드의 새 값이 여전히 표시되지 않습니까? 나는 파이어 버그에서 체크하고 그것은 변화한다. – Huangism

관련 문제