选择下拉列表时,文本框上会显示一个值,但光标位置在文本框的开头。但是我需要在文本框上的值之后显示它。

protected void drgBranches_SelectedIndexChanged(object sender, EventArgs e)

    {
        txtLoginName.Text = drgBranches.SelectedValue;
        txtLoginName.Focus();
    }


它在谷歌浏览器和IE中正常工作。但它在Firefox上不起作用。

最佳答案

仅使用jQuery的解决方案:

$('#txtLoginName').focus();
$('#txtLoginName').val($('#txtLoginName').val())




检查这篇文章Set Focus After Last Character in Text Box在哪里有不同的示例如何执行此操作,但这是最简单的。



FF更新:

要使其在FF中工作,请先清除textBox值,然后再次设置

    var val = $('#txtLoginName').val();
    $('#txtLoginName').val('');
    $('#txtLoginName').val(val);


实时示例:JsFiddle

09-25 21:51