zoukankan      html  css  js  c++  java
  • 使用Input控件完成站内搜索功能

    不知道是我傻还是脑子不转个,当别人问我页面传值的方式的时候我能说出来一大堆,也知道怎么使用(用服务端控件的时候)

    但一直以来我都不知道怎么使用input传值,今天晚上没啥事,试了一交,突然想起来一个很重要的东西,那就是input的name属性,我咋就把你忘了呀!

    例如:

    <input type="text" name="txtWords"/>

    <input type="submit" value="搜索"/>

    哎杯具啊~~  我不知道有多少人和我一样,把这些东西忘掉了,一直都不知道怎么用客户端控件开发asp.net   因为已经习惯了服务端控件给我们带来的方便。 

    然后通过form表单提交:Method="post" 提交方式.   action="Default.aspx" 提交到哪里.

    然后在Default.aspx的页面中使用 Request.Form["txtWords"]; 来获取。

    别问为什么是txtWords,如果是这样,那我上面就白废话了。。

    来个完整的点的代码吧:

    <body>
         
    <form id="form1" method="post" action="ShowList.aspx">

        
    <div class="column">
            请输入搜索内容:
            
    <input id="txtWords" name="txtWords" type="text" /><input id="btnSearch" type="submit"
                value
    ="搜索" /></div>
        
    <div class="column">
            
    <ul>
                
    <asp:ListView ID="objListView" runat="server">
                    
    <ItemTemplate>
                        
    <li><span><%#Eval("id"%></span> 
                            
    <span><%#Eval("saleName"%></span>

                            <span><%#Eval("price"%></span>

                            <span><%#Eval("count"%></span>

                            <span><%#Eval("amount"%></span>

                            <span><%#Eval("InDate"%></span></li>

                     </ItemTemplate>

                 </asp:ListView>

              </ul>

         </div>

    </form>

    </body> 


    在这个过程中我发现一个挺有意思的东西,以前一直都没发现,就是ListView在没有runat="server"的时候还可以使用,编译不会报错。GridView就不行,像TextBox ,Button等控件都不行。

    也许你可能会说我吃饱了没事干,撑着了写这个东西,因为我"讨厌"ViewState,它生成的字符串太让人纠结了.  没有还不习惯,有吧看着还闹心,只好用传统的Html来写了,哈哈。

    接收表单数据的页面后台代码:

     public partial class ShowList : System.Web.UI.Page
        {
            
    protected void Page_Load(object sender, EventArgs e)
            {
                
    if (!IsPostBack)
                {
                   
    string Words = Request.Form["txtWords"];
                   objListView.DataSource 
    = DAL.GetSearch(Words);
                   objListView.DataBind();
                }
            }

         } 

    这样就OK了,其实只要我们拿到表提交过来的值,后面该怎么开发就怎么开发,和开发WebForm一样(本来就是WebForm嘛。。。)

     可偏偏一直以来都转不过来这个弯…… 

    希望看过这篇文章的同学能够和我一样恍然大悟。 

  • 相关阅读:
    剑指offer-翻转单词序列
    剑指offer-丑数
    剑指offer-把数组排成最小的数
    mysql笔记(13)-视图的概念和使用
    mysql笔记(12)-外键约束的添加和删除
    mysql笔记(11)-约束的添加、修改和删除
    mysql笔记(10)-数据的插入和更新(insert/update/case)
    mysql笔记(9)-表的创建和删除(drop/truncate/delete)
    mysql笔记(8)-嵌套查询之in、exists
    mysql笔记(7)-多表查询之自然连接、外连接
  • 原文地址:https://www.cnblogs.com/zhuiyi/p/2099574.html
Copyright © 2011-2022 走看看