0

这是我开始的代码。问题是,在用户从文本输入中集中注意力后,我想重置文本输入。我的意思是用户输入该字段的内容,我想删除它。

$(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>
4

3 回答 3

5

您正在尝试将valuejavascriptDOM对象的属性与 jQuery 对象一起使用。您需要使用 jQuery val()来获取 jQuery 对象的值或将 jQuery 对象转换为 DOM 对象才能使用value

field.value = ''

field.val(''); //using jQuery object

或者

field[0].value = ''; //using javascript object
于 2012-12-17T10:36:27.503 回答
0

试试这个...

field.val('');

代替

field.value = ''
于 2012-12-17T10:39:23.133 回答
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
    });
});
于 2012-12-17T11:03:51.300 回答