[英]How to set value of input number with jQuery?
我正在嘗試使用jQuery設置輸入元素的值。
HTML: <input id="id_year" name="year" type="number">
JavaScript:
$(document).ready(function () {
var year = $("#id_year");
year.datepicker({
format: " yyyy", // Notice the Extra space at the beginning
viewMode: "years",
minViewMode: "years"
});
year.on('changeDate', function(ev){
year.attr('value',ev.date.getFullYear());
});
});
如果輸入類型為text
,則可以使用。 但是我必須使用number
作為輸入類型。
如何使用jQuery或常規JavaScript設置輸入值?
我試圖使用year.val(ev.date.getFullYear());
但這沒用。
您必須使用val
函數。
您可以這樣編寫代碼:
$(document).ready(function () {
var year = $("#id_year");
year.datepicker({
format: " yyyy", // Notice the Extra space at the beginning
viewMode: "years",
minViewMode: "years"
});
year.on('changeDate', function(ev){
console.log("ssds");
$(this).val(ev.date.getFullYear());
});
});
您可以這樣使用。
$(document).ready(function () { var year = $("#id_year"); year.datepicker({ format: " yyyy", // Notice the Extra space at the beginning viewMode: "years", minViewMode: "years", onSelect: function(dateText) { console.log(dateText); var startDate = new Date(dateText); year.val(startDate.getFullYear()); console.log(year.val()); } }); /* year.on('changeDate', function(ev){ console.log("ssds"); year.val(ev.date.getFullYear()); console.log(year.val()); });*/ });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <script src="https://code.jquery.com/ui/1.11.4/jquery-ui.js"></script> <link rel="stylesheet" href="https://jqueryui.com/resources/demos/style.css"> <input id="id_year" name="year" type="number">
您的代碼是正確的,只是datepicker的定義是錯誤的,請更改
format: " yyyy"
至 :
dateFormat: "yy"
(如果您使用的是jquery-ui datepicker)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.