如何在输入文本框元素中获取用户输入的文本值?

时间:2013-09-09 18:32:28

标签: jquery

我在加载页面时有一个带默认值的文本框:

<input id="txtYear" type="text" value="2013" />

加载页面后,用户可以在文本框中输入其他内容,例如2014

当我尝试这样做时:

var year = $("#txtYear").val();

即使用户将文字更改为2014,该值仍为2013

在这种情况下如何获取用户输入的值?

2 个答案:

答案 0 :(得分:1)

将更改事件绑定到文本框。

您看到发生这种情况的原因是因为代码已经在用户输入新年时执行。

$('#txtYear').on('change', function () {
    var year = $("#txtYear").val();
    console.log(year)
}).change();

重构

   var $year = $('#txtYear');
    $year.on('change', function () {
        var year = this.value;
        console.log(year)
    }).change();

答案 1 :(得分:0)

上面的答案确实很有效但是如果你看一下html源代码中的值,它仍然与加载时间相同,即“2013”​​

var year = $("#txtYear").val();

$("#txtYear").on("change",function(){
    year = $(this).val()
    $(this).attr("value",year);
    alert(year);
});

alert(year);

在这里工作小提琴:http://jsfiddle.net/wDtRt/