JS光標定位到文本框字符串末尾

在開發網站表單的時候,爲了給用戶良好的體驗度,在驗證表單數據的時候,我們會先使用JavaScript來進行表單數據的驗證,如果用戶輸入的數據不對,我們就可以馬上給出提示信息。爲了更進一步給用戶良好的體驗感,比如用戶在幾個文本框內輸入了數據,提交的時候,某個文本框內的數據不對,我們在提示哪項數據不符的情況下,再把光標定位到該項文本框內。我們在這麼做的時候,會發現一個問題,就是光標位置的問題,光標雖然定位到了指定的文本框內,但是出現在了字符串的前面,理想的狀態是定位到字符串的末尾。下面給大家分享一個JS光標定位到文本框字符串末尾的函數。


function setCaretPosition(tObj, sPos){
	if(tObj.setSelectionRange){
		setTimeout(function(){
			tObj.setSelectionRange(sPos, sPos);
			tObj.focus();
		}, 0);
	}else if(tObj.createTextRange){
		var rng = tObj.createTextRange();
		rng.move('character', sPos);
		rng.select();
	}
} 

JS光標定位到文本框字符串末尾函數用法示例:

var tObj =document.getElementById("addhotPagetext");
var sPos = tObj.value.length;
setCaretPosition(tObj, sPos);


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章