5

HTML

<input id="formloginusername" type="text" name="username" placeholder="Username" value="Pre-filled-from-database"></input>

JS:

$(document).ready(function() {
    $("#formloginusername").focus();
});

問題:

「データベースから事前入力」というテキストが強調表示されます。ユーザーが入力されたテキストの後でカーソルをクリックしたかのように、カーソルをフィールドに表示したいだけです。

ありがとう!

4

3 に答える 3

14

ここに気の利いた小さなトリックがあります...

$(document).ready(function() {
    var $field = $("#formloginusername"),
        oldVal = $field.val();
    $field.focus().val('').val(oldVal);
});

デモ:http://jsfiddle.net/X7Y8S/

于 2012-11-14T00:49:54.653 に答える
0

これだけでうまくいきます:

$('#field').focus().val($("#field").val());
于 2014-01-02T04:01:16.643 に答える
0

ホップストリーム、あなたの方法を使用してChromeで見つけたのは、カーソルがテキストの最後にあることです。テキストを強調表示せずに、フィールドの先頭にカーソルを合わせる方法が必要でした。これは私のために働いた:

$('#ElementID')。each(function(){$(this).focus(); this.selectionEnd = this.selectionStart;});

于 2014-04-28T19:18:03.730 に答える