如何使用jQuery设置输入数值?

时间:2016-06-16 08:15:38

标签: javascript jquery html

我正在尝试使用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());,但它没有用。

4 个答案:

答案 0 :(得分:0)

year.val(ev.date.getFullYear());

获取值:var yearValue = year.val();

http://api.jquery.com/val/

答案 1 :(得分:0)

您必须使用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());
    });
});

答案 2 :(得分:0)

你可以这样使用。

<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">
{{1}}

答案 3 :(得分:0)

你的代码是对的,只是datepicker的定义错了,改变

format: " yyyy"

到:

dateFormat: "yy"

(如果您使用的是jquery-ui datepicker)

DEMO Here