我不确定为什么我的 focus() 不能在一个视图上工作。
我在 JQuery 中有一个类,通过母版页传递,定义为: $(".focus").focus();
这适用于我代码中其他地方定义的文本框。例如:
<td><%: Html.DropDownListFor(p => p.PhoneTypeId, phoneTypeListItems, new{@class="focus"}) %></td>
但是在具有类似代码的一个视图上,没有设置焦点:
<td><%=Html.TextBoxFor(de => de.EmailAddress1, new {@class="focus"})%></td>
如果我的焦点课程正在使用其他控件,那么它就不可能是我的 jquery。我尝试了许多选项来设置它,包括 $("#EmailAddress1").focus() 并在同一视图中定义我自己的 jquery 以及除此之外的其他选项。唯一能在不点击文本框的情况下点击重新加载按钮(Chrome 和 IE9),这让我相信 DOM 没有加载。但在我的 jquery 中,我使用: $(document).ready(function () {
我不知道如何解决这个问题。任何人都可以帮忙吗?
PS 在进一步的测试中,我发现 JQuery 中的其他类元素也可以工作。例如, <%=Html.TextBoxFor(de => de.EmailAddress1, new { @class = "focus phoneNumber" })%> phoneNumber 和 focus 都在同一个 .js 中 $(".focus").focus( ); $(".phoneNumber").mask("(999) 999-9999");
但只有 phoneNumber 会显示,焦点不会。