Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 验证失败后停止在图像中回发按钮_Asp.net - Fatal编程技术网

Asp.net 验证失败后停止在图像中回发按钮

Asp.net 验证失败后停止在图像中回发按钮,asp.net,Asp.net,我有一个aspx页面,包含一个文本框和一个用于搜索的图像按钮。我使用了比较验证器(检查整数值)和文本框。但即使我输入字母数字字符,页面也会在图像按钮上重新加载,并显示错误消息 我尝试改用regularexpressionvalidator,但问题仍然存在 但当我使用一个简单的asp:按钮并将其与textbox验证绑定在一起时,其工作正常(即textbox的值不正确时不会发生回发),dropdownlist也一样(不会发生回发) 请建议 这是密码- @这是密码 <asp:ImageButto

我有一个aspx页面,包含一个文本框和一个用于搜索的图像按钮。我使用了比较验证器(检查整数值)和文本框。但即使我输入字母数字字符,页面也会在图像按钮上重新加载,并显示错误消息

我尝试改用regularexpressionvalidator,但问题仍然存在

但当我使用一个简单的asp:按钮并将其与textbox验证绑定在一起时,其工作正常(即textbox的值不正确时不会发生回发),dropdownlist也一样(不会发生回发)

请建议

这是密码-

@这是密码

<asp:ImageButton ID="btnSearch" runat="server" OnClick="btnSearch_Click" 
    ToolTip="Search" ValidationGroup="valControl" CausesValidation="true" />
<asp:TextBox ID="txtWidth" CssClass="TextFont" runat="server" 
    Width="233px" MaxLength="20" 
    ValidationGroup="valControl" CausesValidation="true"></asp:TextBox>
<asp:CompareValidator runat="server" ID="cmpValWidth" 
    ErrorMessage="Please enter integer values" ControlToValidate="txtWidth" Display="Dynamic" 
    Operator="DataTypeCheck" ValidationGroup="valControl"Type="Integer"/>

听起来你需要写作

if(!isPostBack)
{
“您的代码”


在代码背后。要防止代码在第一次未查看页面时运行

请将其从文本框中删除,您只需要在验证程序和按钮上使用它:

ValidationGroup="valControl" CausesValidation="true"
如果禁用了javascript,则不会进行客户端验证,因此请始终检查服务器端的有效性:

if(Page.IsValid)
{
    "your btnSearch_Click code"
}

您可以发布文本框、图像按钮和比较验证程序的代码吗?听起来您可能已经将其中一个分配给了验证组,但没有将另一个分配给验证组。如果答案对您有帮助,请不要忘记接受答案…我尝试在文本框上不使用ValidationGroup=“valControl”CausesValidation=“true”,但没有用。。。我试着用简单的asp:按钮检查验证,甚至用一个下拉菜单(当选定的索引被更改时)也可以检查验证。。此图像按钮存在创建问题。@MeghaGupta您的图像按钮是否有客户端代码(请检查页面源代码或使用浏览器开发工具)-如果有,请在此处发布,但基本上它不能有任何
return
语句…是的,它有一些客户端。。基本上,通过javascript验证文本框等其他控件中的数据,并根据验证是否成功分别返回真/假。。客户端代码中的任何返回stmt有什么关系?@MeghaGupta default asp.net validation在
onclick
事件中没有任何返回语句,因此您可能添加了一个“确定吗?”提示窗口,或者在验证代码之前添加了一个返回语句,有效地使其完全无法访问…感谢您的回复。。问题是(正如你提到的)客户端代码中有一个return语句,wz在导致回发的button click事件上执行该语句。无论任何其他asp.net验证如何,都将始终执行任何客户端代码。如果有像“return true”这样的返回stmt,它总是会导致回发。谢谢:)
if(Page.IsValid)
{
    "your btnSearch_Click code"
}