1

我有一个表单,当提交时(空字段)在前端 jsp 中显示 spring 验证错误。我需要将显示集中在前端显示的第一条错误消息中。从表单生成的代码(通过查看源代码):例如 div 元素中包含的 2 条错误消息。我需要将其重点放在第一条错误消息上。

      <div id="userid.errors" class="lp">User id is missing</div>
      <div id="age.errors" class="lp">age is missing</div>

我尝试了下面的 jquery 代码,但它只在 IE 中有效,在 firefox 中无效。在 firefox 中,即使 css 样式处理得当,焦点也不起作用。

我确信语法和逻辑是正确的 - 有人可以帮我修复它以用于 Firefox 浏览器吗?

<script type="text/javascript" src="/scripts/jquery.min.js"></script>
<script type="text/javascript" src="/scripts/jquery.validate.js"></script>

 <script type="text/javascript">

 $(document).ready(function() {
$("[id$='.errors']:first").css("background-color","#FFFFCC");
     setTimeout(function(){
     $("[id$='.errors']:first").focus();
    },300);

 });
 </script> 
4

1 回答 1

2

我不明白你为什么要关注一个 div 以及你所期望的,通常你不能关注一个 div,但你可以这样做,

$(document).ready(function() {
$("[id$='.errors']:first").css("background-color","#FFFFCC");
     setTimeout(function(){
         $("[id$='.errors']:first").attr("tabindex",-1).focus();
         alert(document.activeElement.innerHTML+ "is focussed");
    },300);
 });​​

http://jsfiddle.net/x7euD/3/

于 2012-04-23T10:25:48.027 回答