2017-10-09 78 views
0

我有一个ASP.NET MVC应用程序,我想集中第一个字段出错。点击时,如果最后一个字段有错误,并且用户尝试点击保存按钮,则焦点将进入错误的最后一个字段而不是第一个字段。我试过多次,包括以下:焦点第一个错误字段按钮点击asp.net mvc

$('#Save').click(function() { 
     $(".input-validation-error").each(function() { 
      $(this).focus(); 
      return false; 
     }); 
    }); 

是否有任何解决方案,用户可以随时去的第一个字段错误。此外,如果表单有其他类型的错误,如字段验证错误等,如何使用户的第一个错误?

+0

这似乎是试图解决在这个问题前几小时你在[这个问题](https://stackoverflow.com/q/46652237/3773011)中询问的相同问题。虽然它们不完全相同,但它们本质上是同一个问题。请不要发布你自己的问题的重复。 – Makyen

+0

此外,这个问题是关于JavaScript/HTML/CSS的,所以你应该考虑使用[snippet](// blog.stackoverflow.com/2014/09/introducing-runnable-javascript-css-and-html-code-snippets /)。通过使用一个包含问题完整示例的片段,人们可以更容易地理解您的问题,并提供直接解决问题的答案。它也倾向于导致更多的人对你的问题和/或答案进行投票,因为他们可以自己尝试。 – Makyen

+0

我无法编辑我之前的问题,这就是我不得不再次发布问题的原因。我也认为这更与asp,net mvc有关。 – Vikram

回答

0

像下面这样的东西应该工作:

$('#Save').click(function() { 
    var firstError = $(".input-validation-error")[0]; 

    if(firstError != null){ 
    $(firstError).focus(); 
    } 
}); 
0

我在这里创造一个例子:

$('#Save').click(function() { 
 
var save =""; 
 
     $(".input").each(function() { 
 
     if($(this).val() == ""){ 
 
      $(this).focus(); 
 
      return false; 
 
      
 
      } 
 
      save++; 
 
     }); 
 
      
 
    if(save== $(".input").length){console.log("save");} 
 
    
 
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> 
 
<button id=Save>save</button><br /><br /> 
 

 
<input class=input type=text><input class=input type=text><input class=input type=text><input class=input type=text><input class=input type=text>

所以,如果确认是真实的动作将被否则做将专注于有错误的第一个输入。