当我尝试设置一个文本输入为空(当点击)使用$(this).value =“”,这不工作。我必须使用$(this).val(”)。
为什么?有什么不同? jQuery中val函数背后的机制是什么?
$(document).ready(function() { $('#user_name').focus(function(){ $(this).val(''); }); }); // error code: not working... $(document).ready(function() { $('#user_name').focus(function(){ $(this).value=''; }); });
解决方法
你要:
this.value = ''; // straight JS,no jQuery
要么
$(this).val(''); // jQuery
使用$(this).value =”,你将一个空字符串赋值为jQuery对象的value属性,而不是this本身的值。