2013-08-31 29 views
0

所以我這裏有這個,這應該是計算單詞並顯示「價格」,價格應該由是否檢查1或兩個複選框來決定。因此,例如,如果用戶選中NTV,那麼我想要x = 4,如果他檢查了STS,那麼我想x = 2,如果兩者都爲它顯示確定的價格(x * 2) + (x * 4)Jquery如果複選框或多個複選框被選中更改一個變量

我也不能似乎得到的輸入框輸入西里爾工作,對不起,如果事情沒有意義,我不是以英語爲母語

<input type='checkbox' value='ntv' name='v'> STS<br/> 
<input type='checkbox' value='sts' name='v'> NTV<br/> 
<input class="input1" style="width:350px;" type="text" lang="ru-RU" name="Text_send" id="Text"> 
<input id="finalcount" value="0" disabled /> 
$(function() { 
    var wordCounts = {}; 
    $("input[type='text']:not(:disabled)").keyup(function() { 
     var matches = this.value.match(/\b/g); 
     wordCounts[this.id] = matches ? matches.length/2 : 0; 
     var finalCount = 0; 
     var x = ; 

     $.each(wordCounts, function(k, v) { 
      finalCount += v*x; 
     }); 
     $('#finalcount').val(finalCount) 
    }).keyup(); 
}); 
+1

您似乎缺少值賦值:'var x =;'。這將會產生一個語法錯誤。 –

回答

0

DEMO

HTML

<input type='checkbox' value='2' name='v'>STS 
<input type='checkbox' value='4' name='v'>NTV 

js

$(function() { 
    var wordCounts = {}; 
    $("input[type='text']:not(:disabled)").keyup(function() { 
     var matches = this.value.match(/\b/g); 
     wordCounts[this.id] = matches ? matches.length/2 : 0; 
     var finalCount = 0; 
     var x = 0; 
     $('input:checkbox:checked').each(function() { 
      x += parseInt(this.value); 
     }); 
     x = (x == 0) ? 1 : x; 
     $.each(wordCounts, function (k, v) { 
      finalCount += v * x; 
     }); 
     $('#finalcount').val(finalCount) 
    }).keyup(); 
    $('input:checkbox').change(function() { 
     $('input[type="text"]:not(:disabled)').trigger('keyup'); 
    }); 
}); 
+1

謝謝Tushar,那只是我需要的,對西里爾文/俄文輸入有任何想法? – Konata

+0

@ user2735624不能理解。如果你滿意,你可以接受答案http://i.stack.imgur.com/uqJeW.png –

相關問題