2013-05-19 28 views
0

我有一個HTML表單,允許用戶在兩​​個「每週小時數」和「周每年數量」中輸入值。我們希望包括檢查,以確保用戶不輸入超過可能的最大值 - 這將檢查「的每週課時」不超過168,而且「周每年數量」不超過52.Javascript功能來驗證每週課時/周每年進入

我已經計算的基礎上,價值進入前2個輸入「每週小時平均數」,如下所示的腳本:

function calc(){ 

    $('#lastYear tr:has(.risk)').each(function(i,v){ 

     var $cel = $(v.cells); 

     var $risk = $cel.eq(1).find('option:selected').val(); 
     var $numb = $cel.eq(2).find('input').val(); 
     var $weeks = $cel.eq(3).find('input').val(); 
     var $avg = ($numb * $weeks)/52; 
     var $avgRounded = Math.round($avg * 10)/10; 

     $cel.eq(4).find('input').val($avgRounded); 

    }); 

不知何故,我需要延長這也檢查輸入是否爲有效值,如果確實輸入了無效值,則顯示包含文本的對話框。我已經設置了一個jsFiddle here來演示這個表單。我正在學習Javascript,因爲我現在正在學習,並且完全陷入了這個問題。

更新:我已經添加了一些代碼來檢查的小時數,但現在我陷入無限循環在此它顯示警告對話框,但我點擊確定,我得到同樣的警告對話框。見updated jsFiddle

回答

1
var hour=document.getElementById('hour').value; 
var week=document.getElementById('week').value; 

if(hour>168){alert ("error");return false;} 
else if(week>52){alert ("error");return false;} 
else{return true} 
+0

感謝 - 這是相當接近,但我被陷在一個循環,我不能離開,當我輸入小時的數字無效的,它只是不斷顯示錯誤對話框,我無法擺脫它。有沒有辦法在對話框出現的同時清除單元格的內容? – user982124

+0

是對話框中的一條警告信息? – 2013-05-19 13:43:26

+0

是 - 對話框=瀏覽器警報MESSAGE-見上例如該 – user982124