2014-03-12 2 views
3

최대 속성을 정수로 jquery 변수에 전달하려고합니다. 그냥 제대로 작동하지 않는 것 같습니다. 이 예에서 변수 maxqty는 6이어야합니다.jquery 변수에 입력 max 속성을 정수로 전달

감사합니다.

HTML

<input name="qty" id="qty" type="text" value="1" size="3" maxlength="2" max="6" /> 

jQuery를

var maxqty = 10 

jQuery(function(){ 
    jQuery("#qtyplus").click(function(){ 
    if(jQuery('#qty').val()<maxqty) 
    jQuery(":text[name='qty']").val(Number(jQuery(":text[name='qty']").val()) + 1); 
    }); 
    jQuery("#qtyminus").click(function(){ 
    if(jQuery('#qty').val()>1) 
     jQuery(":text[name='qty']").val(Number(jQuery(":text[name='qty']").val()) - 1); 

    }); 
    }); 
+0

당신이'데이터 attributes'를 사용할 수 있습니다. – MamaWalter

+0

만약'maxqty'가 실제로'10a'라면 숫자 비교는 실패 할 것입니다. 그리고 그 코드는 무엇을 해야하는지, 왜냐하면 당신은 어디에서나'max' 속성을 사용하려하지 않기 때문입니다. –

+0

어디를 지나가고 있습니까? – Sudz

답변

1

무엇을 검색하려고하면 elemenet에 속성이 parseInt($('#qty').attr('max'))

if(jQuery('#qty').val() < (parseInt(jQuery('#qty').attr('max'))))처럼 당신이 원하는 어떤 어떤 수의으로 검색 할 수 있습니다.전화.

및 단지의 경우, jQuery .attr docs

+0

['parseInt()'] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/parseInt)를 사용하려면 기수를 잊지 마십시오. –

+0

좋은 지적으로, Number가 더 간단 할 것이라고 생각합니다. 오늘 아침에 parseInt가있었습니다 : p – Ted

0

당신은 당신의 최대 저장 data-attributes를 사용할 수 있습니다. 이 같은

뭔가 :

<input name="qty" id="qty" type="text" value="1" size="3" maxlength="2" data-max="6" /> 

JS :

var input = jQuery('#qty'); 

jQuery("#qtyplus").click(function(){ 
if(input.val()<jQuery('#qty').data('max')) 
input.val(parseInt(input.val()) + 1); 
}); 

jQuery("#qtyminus").click(function(){ 
if(input.val()>1) 
    input.val(parseInt(input.val()) - 1); 
}); 

FIDDLE DEMO

관련 문제