2016-11-01 22 views
-1

我有這個JavaScript函數,我必須創建一個提示,我需要輸入一個數字並基於它來運行上面的函數。數字個人代碼驗證器

JavaScript部分是正確的,但我不知道如何創建前端界面並將其鏈接到該函數。

我只允許使用JavaScript和HTML。 (作業)

function validCNP(p_cnp) { 
    var i=0 , year=0 , hashResult=0 , cnp=[] , hashTable=[2,7,9,1,4,6,3,5,8,2,7,9]; 
    if(p_cnp.length !== 13) { return false; } 
    for(i=0 ; i<13 ; i++) { 
     cnp[i] = parseInt(p_cnp.charAt(i) , 10); 
     if(isNaN(cnp[i])) { return false; } 
     if(i < 12) { hashResult = hashResult + (cnp[i] * hashTable[i]); } 
    } 
    hashResult = hashResult % 11; 
    if(hashResult === 10) { hashResult = 1; } 
    year = (cnp[1]*10)+cnp[2]; 
    switch(cnp[0]) { 
     case 1 : case 2 : { year += 1900; } break; 
     case 3 : case 4 : { year += 1800; } break; 
     case 5 : case 6 : { year += 2000; } break; 
     case 7 : case 8 : case 9 : { year += 2000; if(year > (parseInt(new Date().getYear() , 10) - 14)) { year -= 100; } } break; 
     default : { return false; } 
    } 
    if(year < 1800 || year > 2099) { return false; } 
    return (cnp[12] === hashResult); 
} 
+0

是否有人可以幫助? –

回答

0

因爲它似乎你並不需要一個真正的接口,而只是一個方式來輸入數字時,最簡單的例子是使用JavaScript方法window.prompt()...然後值傳遞給你的函數

var data = prompt('Type a number'); 
console.log(validCNP(data)); 

https://developer.mozilla.org/en-US/docs/Web/API/Window/prompt

+0

你能解釋得更好嗎?我對編碼真的很陌生。我需要一個帶有按鈕或提示的頁面,其中顯示加載何處輸入我的號碼,然後根據該函數獲取警報(true或false)或頁面上的消息。 –