如何在asp.net中的文本框上实现click事件?
在我的Web应用程序中,我需要一个function,以便当用户单击文本框输入值时,它应该使按钮和其他字段可见?
我使用下面提供的代码,但无法使其正常工作。
C#:
protected void TextBox1_Click(object sender, EventArgs e) { ButtonSearch.Visible = true; }
ASP.Net:
怎么做到这一点?
谢谢
设置AutoPostback="True"
。 这样,事件将在服务器端触发,按钮将变为可见。
但是,如果你只想要一个按钮的可见性,你真的应该考虑javascript。 这将节省返回服务器的行程。
您无需回发到服务器即可完成工作。 例如,您可以使用客户端onFocus
事件和javascript / jquery。
我知道我使用了类型文本的输入,并且您使用的是在服务器上发布的ASP控件,但这里有一个JSFiddle可以让您走上正确的轨道: http : //jsfiddle.net/Mmjtz/1/
$("<%= ButtonSearch.ClientID %>").click(function(){ $("#TextBox1").show(): });
在此代码中,您需要传递要在单击按钮时可见的字段ID。
[jQuery]( http://jquery.com/ )是您问题的完美解决方案。
代码将是这样的:
$("#TextBox1").on("click",function(){$("#ButtonSearch").css("visibility", "visible");})
您通过将到页面来包含该脚本,然后您可以添加该块上面的代码在
标记内。
希望这可以帮助。
将文本框放在div
并使用代码隐藏中的div
的onClick
事件。 这不是你问的,但它对我没有任何错误。 这是一个实现请求事件的javascript
函数:
function toggleVisibility() { document.getElementById('TextBox1').disabled = true; /* ...some other code... */ }
当然,在实现此JS函数之后,您必须在div
定义中定义onclick
事件。
重要提示:由于您现在从代码隐藏中禁用了TextBox
,因此必须先在某个位置启用它,然后才能再次使用它。 否则在页面运行时您将看不到它。