我有一个页面,在那个页面中我有几个用户控件,所以其中一个验证了一个文本框,看它是否为空它工作正常...但后来我有其他控件......其中一个有提交按钮,所以我想要做的是当文本框为空(并且它正确验证)时单击按钮以跳转到页面的该部分,以便用户可以看到错误。
现在它只是显示消息,但它一直在页面中,所以错误就在那里,用户点击并点击但不知道问题在顶部......
如何关注该控件中的文本框...当点击另一个控件中的提交按钮但它们仍在同一页面中时?
我希望您能理解这个问题,如果没有请问,我很乐意为您提供更多信息。
答案 0 :(得分:2)
这是一种设置焦点的方法,将此函数放在ASP.NET按钮控件的OnClientClick
中:
function ValidatorFocus()
{
//force .net validation
Page_ClientValidate();
var i;
for (i = 0; i < Page_Validators.length; i++)
{
if (!Page_Validators[i].isvalid)
{
document.getElementById(Page_Validators[i].controltovalidate).focus();
break;
}
}
}
答案 1 :(得分:1)
您使用的是内置的ASP.NET验证程序吗?如果是这样,您应该查看SetFocusOnError。
<asp:textbox id="txt" runat="server">
<asp:RequiredFieldValidator ID="vld" ControlToValidate="txt" SetFocusOnError="true" />