似乎javascript函数永远不会被执行。谁能告诉我为什么?
<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的初学者。
答案 0 :(得分:6)
submit
类型的按钮旨在将表单提交给它的动作。在这种情况下,它只会刷新页面。
相反,只需将type
更改为button
。
<button type="button" id="jobmonth">View all job requests in this month</button>
这不会提交页面,您将看到记录的结果。
答案 1 :(得分:0)
尝试为您的代码提供ID,然后使用提交事件。这意味着在提交表单而不是单击按钮时将触发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>
你也可以使用&#34;提交&#34;简写:https://api.jquery.com/submit/