这是我开始的代码。问题是,在用户从文本输入中聚焦后,我想重置文本输入。我的意思是用户进入该领域,我想删除它。
$(function(){
var field = $('#searchField');
field.focusin(function(){
console.log('element is focused.');
field.animate({width: '100px'});
});
field.focusout(function(){
console.log('element is not focused.');
field.animate({width: '50px'});
field.value = ''; // this is not working.
});
});
html代码:
<p><input id="searchField" type="text" width="50px"/></p>
答案 0 :(得分:5)
您正在尝试将javascript value
对象的DOM
属性与jQuery对象一起使用。您需要使用jQuery val() 来获取jQuery对象的值或将jquery对象转换为DOM对象以使用value
。
field.value = ''
要
field.val(''); //using jQuery object
或
field[0].value = ''; //using javascript object
答案 1 :(得分:0)
尝试这个...
field.val('');
而不是
field.value = ''
答案 2 :(得分:0)
很容易:
$(function(){
var field = $('#searchField');
field.focusin(function(){
console.log('element is focused.');
$(this).animate({width: '100px'});
});
field.focusout(function(){
console.log('element is not focused.');
$(this).animate({width: '50px'});
$(this).val(''); // This should work
});
});