2011-07-09 47 views
0

我創建了一個字符發生器。問題計數

From: &#38;&#35;<input type="text" value="33" class="from" />; 
To: &#38;&#35;<input type="text" value="1030" class="to" />; 

它有兩個輸入字段與範圍100的1000

var from = $('input.from').val(); 
var to = $('input.to').val(); 
var diff = (to - from); 

if (diff > 1000){   
    $('.error').html('ERROR: This code could run slow. Numbers range MAX 1000 !'); 
} 

它工作正常,但是當在右側()場均數最大差別輸入兩個數字 - 如果1000將無法工作。

可能是後來和平的代碼搞亂了事情? (I填充它的容器與在所選擇的數字的範圍內的字符,olways如果他們的差不小於1000更大('原因不是腳本可能會變得不穩定,如果產生的div超過1000。))

var ascii = ''; 
    for (var i = from; i <= to; i++) { 
     ascii += "<div class='box'> &#38;&#035;"+i+"&#59; <span>&#"+i+";</span> </div>" 
    } 

回答

4

強制轉換您的輸入,數字或其他for循環將無法正常工作:)

var from = Number($('input.from').val()); 
var to = Number($('input.to').val()); 

http://jsfiddle.net/8hV8E/4/

1

更改環路

for (var i = parseInt(from,10); i <= parseInt(to,10); i++)