在按钮上单击显示标签

时间:2017-01-23 20:56:15

标签: c# html asp.net button runatserver

我正在尝试实现一个简单的功能。基本上,它是一个搜索栏。在按钮上单击标签应显示一些预定义文本+搜索词。这是我的aspx代码..

<section class="webdesigntuts-workshop">
    <form id="form1" runat="server">            
        <asp:TextBox type="search" name="search" id="sform" placeholder="What are you looking for?" runat="server" />       
        <asp:label id="searchResultLabel" runat="server" Visible="false" />     
        <button id="lookup" onclick="lookup_Click"  runat="server">Search</button>
    </form>
</section>

这是我的aspx.cs代码:

protected void lookup_Click(object sender, EventArgs e)
        {
            String query = sform.Text;
            if (!String.IsNullOrEmpty(query))
            {
                searchResultLabel.Text = "You are looking up the term" + query;
                searchResultLabel.Visible = true;
            }
        }

截至目前,按钮时钟我看不到任何事情发生。我已经添加了断点但是控制线似乎没有按下按钮点击.cs代码。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

在常规HTML onClick元素上使用<button>会查找 JavaScript 事件,而不是您想要的代码隐藏/服务器端事件。

要引用服务器端事件,您可以执行以下任一操作:

1。将您的<button>改为<asp:Button>

<asp:Button id="lookup" onclick="lookup_Click"  runat="server">Search</asp:Button>

注意:如果您在前端的任何位置通过ID引用此按钮,则您需要添加属性ClientIdMode="static"以确保不会重写ID何时呈现元素。

2。onclick="lookup_Click"更改为onServerClick="lookup_Click"