我如何在文本变化事件中无效该页面。
我有一个简单的表单,带有文本框和一个按钮要提交如果输入的文本无效,我想禁用按钮或停止提交。由于我有一些数据库操作来检查内容的有效性,因此应在文本变化事件中检查有效性。如果我能以某种方式使文本变化事件中的页面无效,那么可能会更容易请给我一些简单的实施方法谢谢Shomaail
我能够完美解决自己的问题。我使用了CustomValidator OnServervalidate事件
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.customvalidator.onservervalidate(v = vs.110).aspx
现在,在我的文本变化事件中,如果输入的数据不正确,我会显示警告,并且在我的提交按钮的button_click事件中,我致电page.validate()随后调用与文本关联的每个自定义验证器的onservervalidate事件处理程序盒子。
protected void btnIssueItem_Click(object sender, EventArgs e)
{
Page.Validate();
if (!Page.IsValid)
return;
....
}
protected void tbRoomID_CustomValidator_ServerValidate(object source, ServerValidateEventArgs args)
{
BAL bal = new BAL();
args.IsValid = bal.GetRoomByRoomID(Int32.Parse(args.Value)).Count == 0 ? false : true;
}
您可以将启用按钮设置为false的true,即:
<asp:TextBox runat="server" ID="txtData" OnTextChanged="txtData_TextChanged"
AutoPostBack="true"></asp:TextBox>
<asp:Button runat="server" ID="btnSave" OnClik="btnSave_Click"></asp:Button>
在代码behid上:
protected void txtData_TextChanged(object sender, EventArgs e)
{
if(txtData.Text == "something")
{
btnSave.Enabled = True;
}
else
btnSave.Enabled = False;
}