2017-06-17 31 views
1

看來javascript函數從未被執行。誰能告訴我爲什麼?單擊按鈕後無法使用console.log(「xyz」)。

<form> 
    <select type="text" name="month" id="month"> 
     <option value="01">January</option> 
     <option value="02">February</option> 
     <option value="03">March</option> 
     <option value="04">April</option> 
     <option value="05">May</option> 
     <option value="06">June</option> 
     <option value="07">July</option> 
     <option value="08">August</option> 
     <option value="09">September</option> 
     <option value="10">October</option> 
     <option value="11">November</option> 
     <option value="12">December</option> 
    </select> 
    <button type="submit" id="jobmonth">View all job requests in this month</button> 
    </form> 

    <script type="text/javascript"> 
     $('#jobmonth').click(function() { 
       console.log("work"); 
       var month = $('#month').val(); 
       console.log(month); 
    } 
    </script> 

沒有一個console.log工作。 PS-對不起,這個愚蠢的問題。我只是JS的初學者。

+1

將按鈕的類型更改爲按鈕而不是提交。 – Bert

+0

@BertEvans謝謝!有效。應該提交不被使用,因爲它只提交給表單action中指定的url? –

+1

提交類型的按鈕旨在將表單提交給它的任何操作。在這種情況下,它只會刷新頁面。 – Bert

回答

6

類型爲submit的按鈕旨在將表單提交給它的任何動作。在這種情況下,它只會刷新頁面。

取而代之,只需將type更改爲button即可。

<button type="button" id="jobmonth">View all job requests in this month</button> 

這將不會提交頁面,你會看到你的記錄結果。

0

試着給你的標籤給一個ID,然後使用submit事件。這意味着,當表單提交,而不是該按鈕是點擊的console.log將被觸發,但結果應該是一樣的:

<form id="myform"> 
    <select type="text" name="month" id="month"> 
     <option value="01">January</option> 
     <option value="02">February</option> 
     <option value="03">March</option> 
     <option value="04">April</option> 
     <option value="05">May</option> 
     <option value="06">June</option> 
     <option value="07">July</option> 
     <option value="08">August</option> 
     <option value="09">September</option> 
     <option value="10">October</option> 
     <option value="11">November</option> 
     <option value="12">December</option> 
    </select> 
    <button type="submit" id="jobmonth">View all job requests in this month</button> 
    </form> 

    <script type="text/javascript"> 
     $('#myform').on('submit', function() { 
       console.log("work"); 
       var month = $('#month').val(); 
       console.log(month); 
    } 
    </script> 

您還可以使用「提交」的簡寫:https://api.jquery.com/submit/