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 Ready 呼び出しを追加する):

$(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 に答える