我正在为我的webapp做一个搜索功能。
但是,如果用户未在搜索框中输入任何搜索条件,我会尝试禁用搜索按钮。不幸的是,我无法允许我的webapp自动检测用户是否在搜索框中输入了最终会启用搜索按钮的内容。反之亦然,当用户从搜索文本框中删除任何搜索值时,该按钮将再次启用。
这是我键入的方式将条件放在我的搜索框中,名为txtData,但它不起作用。
protected void txtData_TextChanged(object sender, EventArgs e)
{
if (!txtData.Text.Equals(""))
{
btnSearch.Enabled = true;
}
}
还有其他方法可以检测文本框中的单词吗?
问候。
答案 0 :(得分:2)
protected void txtData_TextChanged(object sender, EventArgs e)
{
btnSearch.Enabled = !String.IsNullOrWhiteSpace(txtData.Text);
}
答案 1 :(得分:1)
我建议你添加一个名为requiredfieldvalidator的验证器 http://www.w3schools.com/aspnet/control_reqfieldvalidator.asp
requiredfieldvalidator是一个验证器,它检查字段是否为空,如果是,则会显示错误消息并且不会回发,因此,在这种情况下,Web应用程序将不会执行搜索功能
如果你真的想在客户端禁用/启用按钮,我建议你在名为“onblur”的文本框中添加一个客户端事件,并创建一个函数(javascript),如果没有文本,则禁用搜索按钮文本框,如果有,则启用按钮。
或者如果你真的想在服务器端使用textchanged事件,你必须将该文本框的autopostback设置为true
protected void txtData_TextChanged(object sender, EventArgs e)
{
btnSearch.Enabled = (!string.IsNullOrEmpty(txtData.Text.Trim()));
}
答案 2 :(得分:0)
protected void txtData_TextChanged(object sender, EventArgs e)
{
btnSearch.Enabled = txtData.Text.Length > 0;
}
答案 3 :(得分:0)
protected void txtData_TextChanged(object sender, EventArgs e)
{
if (!txtData.Text.Equals("") || !txtData.Text.toString().Equal(string.empty))
{
btnSearch.Enabled = true;
}
}