在我的代码中,$("#date")
是附加了jquery datepicker的文本字段。在下面的代码中,当我选择日期时,firebug会显示此错误this.val is not a function
$("#date").change(function(){
var mydate = this.val();
alert(mydate);
});
但是当我使用this.val()
更改$("#date").val()
时,它会完美运行并提醒所选日期。任何人都可以指出this.val()
无效的原因吗?
修改的
对不起,$这是一个错字。我实际上使用了this.val(),而不是$ this.val()
答案 0 :(得分:10)
this
不是jquery对象,它是一个dom对象。将其称为$(this)
,它应该适合您。
$("#date").change(function(){
var mydate = $(this).val();
alert(mydate);
});
答案 1 :(得分:9)
你应该写
$(this).val();
答案 2 :(得分:2)
$ this.val()应为$(this).val();
$("#date").change(function(){
var mydate = $(this).val();
alert(mydate);
});
答案 3 :(得分:2)
this
是一个实际的DOM元素,而val()
是一个jQuery方法 - 你不能将它们结合起来。使用$(this).val()
。
答案 4 :(得分:2)
试试这个
var mydate = $(this).val();