我不确定为什么我的焦点()不能处理一个视图。
我在JQuery中有一个类,通过一个母版页,定义为: $(" .focus&#34)。对焦();
这适用于我的代码中其他位置定义的文本框。例如:
<td><%: Html.DropDownListFor(p => p.PhoneTypeId, phoneTypeListItems, new{@class="focus"}) %></td>
但是在一个具有相似代码的视图中,焦点未设置:
<td><%=Html.TextBoxFor(de => de.EmailAddress1, new {@class="focus"})%></td>
如果我的焦点课程正在使用其他控件,那么它就不能成为我的jquery。我已经尝试了很多选项来设置它,包括$(&#34;#EmailAddress1&#34;)。focus()和在同一视图中定义我自己的jquery以及旁边的其他选项。唯一没有点击文本框本身的工作就是点击重新加载按钮(Chrome和IE9),这让我相信DOM没有加载。但在我的jquery中我使用: $(document).ready(function(){
我不知道如何解决这个问题。有人可以帮忙吗?
P.S。在进一步的测试中,我发现JQuery中的其他类元素可以工作。例如, &lt;%= Html.TextBoxFor(de =&gt; de.EmailAddress1,new {@class =&#34; focus phoneNumber&#34;})%&gt; phoneNumber和focus都在相同的.js中 $(&#34; .focus&#34)。对焦(); $(&#34; .phoneNumber&#34;)。mask(&#34;(999)999-9999&#34;);
但是只会显示phoneNumber而焦点不会显示。
答案 0 :(得分:0)
如果你想使用jQuery设置焦点类,你必须提供 ID :
<td><%=Html.TextBoxFor(de => de.EmailAddress1, new {@class="focus", id = "EmailAddress", name = "EmailAddress"})%></td>
现在在 jQuery :
$(document).ready(function(){
$("#EmailAddress").focus();
});