3
環境: 請使用IE用於測試它的Javascript文本字段值重點
要求: 我有檢查,如果用戶輸入的值小於8位的警報消息 - 用戶將無法移動到下一個領域......他應該保持在同一個領域。
問題: 一切都很好,與除一件事的功能 - 當用戶在文本框輸入的任何值小於8位,他得到他FOUCS回以這樣的方式比光標移動到的第一個字母輸入的值,而它應該返回到輸入值的最後一個字母。
代碼:
<html>
<body>
<script>
function checkField(field) {
if (field.value.length < 8) {
// Toggle the active element's blur off and back on after the next blur
var active = document.activeElement;
if (active && active !== field) {
var blur = active.onblur || function(){};
active.onblur = function(){ active.onblur = blur };
}
field.focus();
alert("cannot be less than 8 digits");
}
}
</script>
<input type="text" id="test1" onblur='return checkField(this);'>
<br/>
<input type="text" id="test2" onblur='return checkField(this);'>
</tr>
</table>
</body>
</html>
PERFECT:d感謝 –
一個變化我想提出的是後this.scrollTop = ... DO this.scrollLeft = this.scrollWidth;否則你不能總是看到光標。 – Dunc