Javascript焦点在我的代码中无效。
HTML
<div class="col-md-6" style="border:none; margin-top:2px; padding-right:5px">
<input type="text" id="edtunt" ng-model="Unit" class="form-control" placeholder="Edit Unit" />
</div>
Javascript
var textbox = document.getElementById('edtunt');
//document.getElementById("edtunt").focus();
document.getElementById("edtunt").focus();
$scope.Unit = unit.name;
答案 0 :(得分:3)
使用tabindex =&#34; 0&#34;使div可聚焦
答案 1 :(得分:1)
您的代码有效:
document.getElementById('edtunt').focus();
<div class="col-md-6">
<input
type="text"
id="edtunt"
ng-model="Unit"
class="form-control"
placeholder="Edit Unit">
</div>
此外,在AngularJS应用程序中,您可以添加autofocus
属性:
angular
.module('MyApp', [])
.controller('MyController', function() {});
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="MyApp" ng-controller="MyController">
<div class="col-md-6">
<input
autofocus
type="text"
id="edtunt"
ng-model="Unit"
class="form-control"
placeholder="Edit Unit">
</div>
</div>
答案 2 :(得分:0)
确实你的代码应该有效。只是一个问题,为什么你这样做:
var textbox = document.getElementById('edtunt');
document.getElementById("edtunt").focus();
而不是:
var textbox = document.getElementById('edtunt');
textbox.focus();
对我来说有用的是确保在设置焦点之前加载整个文档。一个非常简单的方法是使用此复制粘贴JQuery代码:
$( document ).ready(function() {
var textbox = document.getElementById('edtunt');
textbox.focus();
});
希望这可能会有所帮助!