Javascript 在文本区域内设置焦点不需要';行不通
我有以下代码:Javascript 在文本区域内设置焦点不需要';行不通,javascript,jquery,Javascript,Jquery,我有以下代码: <div class="modal-body"> <div class="form-group" id="checkDiv_0"> <div class="col-md-2 control-label"> @Translations.ReportCopy </div> <div class="col-md-10"> <div class="col-md-1
<div class="modal-body">
<div class="form-group" id="checkDiv_0">
<div class="col-md-2 control-label">
@Translations.ReportCopy
</div>
<div class="col-md-10">
<div class="col-md-1">
<button class="btn btn-primary pull-right"><span class="glyphicon glyphicon-remove"></span></button>
</div>
<div class="col-md-11">
<textarea id="textarea_0" name="Copies" class="form-control textarea-resize"></textarea>
</div>
</div>
</div>
<div class="form-group" id="checkDiv_1">
<div class="col-md-2 control-label">
@Translations.ReportCopy
</div>
<div class="col-md-10">
<div class="col-md-1">
<button class="btn btn-primary pull-right"><span class="glyphicon glyphicon-remove"></span></button>
</div>
<div class="col-md-11">
<textarea id="textarea_1" name="Copies" class="form-control textarea-resize"></textarea>
</div>
</div>
</div>
所需的代码实际上取决于何时需要给予它关注。如果你需要在页面加载时给它焦点,你应该按照@davidli的建议去做 否则,你可以这样做
document.getElementById('focusButton')。onclick=function(){
document.getElementById('textarea_1').focus();
};代码>
@翻译。报告副本
@翻译。报告副本
没有jQuery的两个示例:
window.onload = function() { document.getElementById('textarea_1').focus(); };
或
第二个允许您将多个'onload'
事件分配给单个DOM元素。您需要将jQuery代码包装在.ready()函数中:
$(document).ready(function(){
$("#textarea_1").focus();
});
这个问题不需要javascript,因为您可以:
<textarea id="textarea_1" name="Copies" class="form-control textarea-resize" autofocus></textarea>
“自动聚焦”属性将文本区域作为默认值聚焦在DOM上
您可以使用此页面作为参考:
您在哪里/如何/何时呼叫$('#textarea_1')。focus()
?你可能是在叫它早点。你没有读过jQuery教程吗?是否希望在加载文档时具有焦点?“必须等待浏览器完成渲染。”是,但有比使用任意超时更好的方法。这里列出了以下几点:你是正确的。我在firefox中创建了JSFIDLE。我现在在opera中测试了它,它在没有所有额外代码的情况下工作。Firefox是命中或未命中的。
$(document).ready(function(){
$("#textarea_1").focus();
});
<textarea id="textarea_1" name="Copies" class="form-control textarea-resize" autofocus></textarea>