2013-05-01 56 views
0

我想按鈕來運行相應的功能字段中的代碼,但我不相信我已經正確設置。應該處理字段中輸入的字符串或數字,然後打印出答案。最後的'else'語句只是查看它是否運行了代碼,但是我可以輸入數字和字符串,並且第一條語句將打印出「This is not a year」。我也不確定是否格式化了第二個'else/if'語句參數(正確輸入%4輸入%100 & &!enter%400)。任何幫助將不勝感激,因爲我試圖自己解決這個問題,並且進展緩慢,所以任何幫助都非常感謝。謝謝!按鈕沒有鏈接到輸入字段與JavaScript

<!DOCTYPE html> 
    <html> 
    <head> 
    <link rel="stylesheet" href="style.css" /> 
    <script src='script.js'></script> 
    <title></title> 
    </head> 
    <body> 
    <!--leap year calculator--> 
    <h3>Is it a leap year?</h3> 

    <form action=""> 
     Year:<input type="text" name="enter" id="enter"> <br> 
    </form> 
    <script>function YOLO(enter){ 
    if (iNaN(enter)){ 
    console.log("This is not a year"); 
    } 
    else if (enter % 4 && enter % 100 && !enter % 400){console.log("no"); 
    } 
    else if(enter % 4){console.log("yes"); 
    } 
    else {alert("working")} 
    }; 

    var Id= document.getElementById("enter"); 
    </script> 
    <button onclick="YOLO(Id)">Enter</button> 

    </body> 
    </html> 
+0

嘗試enter.value – technosaurus 2013-05-01 12:08:59

+0

您的代碼中有語法錯誤,我想您想使用函數'isNaN'。你用'iNaN'代替。 – 2013-05-01 12:33:32

回答

0

您必須使用元素的value屬性。類似這樣的:

<button onclick="YOLO(document.getElementById('enter').value);">Calculate</button> 
+0

謝謝,這解決了我的問題和我的語法錯誤。儘管在之前的一組代碼中,我已經將'iNaN'修改爲'isNaN',但由於某種原因,它消失了,我再也沒有看到它。再次感謝。 – 2013-05-02 00:54:56

+0

雖然我的函數仍然無法正確執行,但第二個'if/else'語句的代碼格式是否正確? – 2013-05-02 01:12:44

+0

@ user2319588你的代碼是有效的JavaScript函數的語法,但它必須做的功能過程,我不知道。 – 2013-05-02 04:16:52