Javascript 当验证在底部失败时,为什么浏览器显示在页面顶部?
我刚刚通过设置ValidationGroup,用ValidationSummary实现了RequiredFieldValidatior 当我点击相关按钮时,它工作正常 但是,视口在页面顶部发生变化和移动,我的validaiton结果和按钮等停留在页面底部,这不好 有没有办法防止这种情况,让浏览器在点击按钮后仍然在同一区域购物Javascript 当验证在底部失败时,为什么浏览器显示在页面顶部?,javascript,asp.net,validation,validationsummary,Javascript,Asp.net,Validation,Validationsummary,我刚刚通过设置ValidationGroup,用ValidationSummary实现了RequiredFieldValidatior 当我点击相关按钮时,它工作正常 但是,视口在页面顶部发生变化和移动,我的validaiton结果和按钮等停留在页面底部,这不好 有没有办法防止这种情况,让浏览器在点击按钮后仍然在同一区域购物 附加说明:客户端验证失败;因此,不会发生回发。基本上,验证失败,视口在页面顶部滑动。您可以通过在页面顶部添加以下指令来实现这一点: <%@ Page Maintain
附加说明:客户端验证失败;因此,不会发生回发。基本上,验证失败,视口在页面顶部滑动。您可以通过在页面顶部添加以下指令来实现这一点:
<%@ Page MaintainScrollPositionOnPostback="true" %>
您可以通过在页面顶部添加以下指令来实现此目的:
<%@ Page MaintainScrollPositionOnPostback="true" %>
在RequiredFieldValidator中,有一个设置FocusOneError的选项,该选项将光标移动到文本框/输入类型
然后在页面顶部的页面声明中,添加MaintainScrollPositionOnPostback=true
在RequiredFieldValidator中,有一个设置FocusOneError的选项,该选项将光标移动到文本框/输入类型
然后在页面顶部的页面声明中,添加MaintainScrollPositionOnPostback=true
我以前这样做是为了将焦点放在手动调用validation时未验证的First元素上:
//has to be called after Page_ClientValidate()
function ValidatorFocus()
{
var i;
for (i = 0; i < Page_Validators.length; i++)
{
if (!Page_Validators[i].isvalid)
{
document.getElementById(Page_Validators[i].controltovalidate).focus();
break;
}
}
}
我以前这样做是为了将焦点放在手动调用validation时未验证的First元素上:
//has to be called after Page_ClientValidate()
function ValidatorFocus()
{
var i;
for (i = 0; i < Page_Validators.length; i++)
{
if (!Page_Validators[i].isvalid)
{
document.getElementById(Page_Validators[i].controltovalidate).focus();
break;
}
}
}
这是一个特定于代码的问题,而不是一般行为,对吗?@pencilcake是您的验证摘要或页面顶部的必填字段?因此这是一个特定于代码的问题,而不是一般行为,对吗?@pencilcake是你的验证摘要还是页面顶部的必填字段?我相信这是在发帖后要做的事情。假设我仍然在客户端,而验证在客户端失败。我也将该属性设置为true,但我不认为它不会影响我的caseAh,我明白你关于客户端验证的意思。结合@Tim B James的建议,它应该会起作用吗?我相信这是在一篇文章回来后要做的事情。假设我仍然在客户端,而验证在客户端失败。我也将该属性设置为true,但我不认为它不会影响我的caseAh,我明白你关于客户端验证的意思。将此与@Tim B James建议结合起来,它会起作用吗?