2010-11-04 118 views
1

嘿, 在ASP.NET中使用簡單的選項可以將焦點置於文本框元素中的文本末尾嗎?沒有JavaScript?在文本框的文本末尾設置焦點

+2

你需要JavaScript來做這個。 – ceejayoz 2010-11-04 12:54:12

+0

此連桿具有正確溶液 [設置焦點到文本的結束在回發後的文本框] [1] [1]:http://stackoverflow.com/questions/4032888/set-focus -to-結束文本中,文本框,後回傳 – PSR 2013-03-25 09:40:51

回答

5

ASP.NET文本框呈現爲標準的HTML輸入(類型=「文本」),並達到你所要求的唯一途徑是通過JavaScript:

var textbox = document.getElementById('foo'); 
textbox.focus(); 
textbox.value = textbox.value; 

其中foo是生成的ID輸入:

<input type="text" id="foo" name="foo" value="some text" /> 
2

你可以使用這個服務中端:

ScriptManager.RegisterStartupScript(this, this.GetType(), "tmp2", "var t2 =  document.getElementById('foo'); t2.focus();t2.value = t2.value;", true); 
2

解決方案使用jQuery

$('#loginBtn').on('click',function(){ 
    var val = $('#txtLoginName').val(); 
    $('#txtLoginName').val(''); 
    $('#txtLoginName').val(val); 
    $('#txtLoginName').focus(); 
}); 

HTML代碼

<input type="text" id="txtLoginName" value="test"/> 

Fiddle Example

0

這甚至適用於更新面板,我相信所有其他情況太

ScriptManager.RegisterStartupScript(this, this.GetType(), "tmp2", "$('#ContentPlaceHolder1_TxtSupplier').focus();var value = $('#ContentPlaceHolder1_TxtSupplier').val();$('#ContentPlaceHolder1_TxtSupplier').val('');$('#ContentPlaceHolder1_TxtSupplier').val(value);", true); 
相關問題