0

我知道其他人已经问过这个问题。而且我尝试了其他人推荐的解决方案,但似乎不起作用。

这是我的代码:

<!DOCTYPE HTML>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

<script type='text/javascript'>
$('input:text').focus(
    function(){
        $(this).val('');
});
</script>
</head>
<body>
<form>
<input type="text" value="Text">
</form>
</body>
</html>
4

2 回答 2

3

您的问题是,当 jQuery 代码运行时,html 还不存在。<body>因此,您只需要在页面加载时运行 jQuery,或者在结束标记之前发布该脚本。

选项 1(向 yor 函数添加 DOM 就绪调用):

$(document).ready(function() {
    $('input:text').focus(function() {
        $(this).val("");
    });
});

选项 2(在<script>body 标签关闭之前添加)

<!DOCTYPE HTML>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
</head>
<body>
<form>
<input type="text" value="Text">
</form>
<script type='text/javascript'>
$('input:text').focus(
    function(){
        $(this).val('');
});
</script>
</body>
</html>
于 2013-08-26T14:35:26.047 回答
2

你想做更多的事情

$(function() {
    $('input:text').focus(function() {
        $(this).val("");
    });
});

如果没有$(function() {...,您可能会尝试在 jQuery 加载之前触发它。

于 2013-08-26T14:32:42.323 回答