论坛首页 编程语言技术论坛

HTML文本框值改变触发后台代码

浏览 3920 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2012-02-10  

asp.net用日期插件,当选中一个日期时触发一个事件,以查询当前日期的数据。这

是要跟数据库交互的。先贴出控件代码:
<asp:TextBox ID="txtDate" CssClass="Wdate" Style="width: 91px;" runat="server"

onfocus="WdatePicker({maxDate:'%y-%M-%d',isShowClear:false,readOnly:true})"
                        onpropertychange="showValue(this.value)" ></asp:TextBox>


                    <asp:HiddenField ID="hiddenDate" runat="server"

OnValueChanged="hiddenDate_ValueChanged"
                        EnableViewState="false" />
 <div style="display: none;">
                        <asp:ImageButton ID="btnHid" runat="server"

ImageUrl="~/Resource/images/Btn_Find.gif"
                            CausesValidation="false" align="absmiddle"

OnClick="btnHid_Click" />
                    </div>
如果要实现这个目的,肯定要用到后台代码,也需要用到javascript代码。javascript代码

如下:
<script type="text/javascript">
        //记录用户上一次输入的日期。
        var today = new Date();
        var todayMonth;
        var todayDate;

        //格式化当前“月”,“日”格式。
        if ((today.getMonth() + 1) < 10) {
            todayMonth = "0" + (today.getMonth() + 1);
        }
        if (today.getDate() < 10) {
            todayDate = "0" + today.getDate();
        }

        //获得当前的日期。
        var oldValue = today.getFullYear() + "-" + todayMonth + "-" + todayDate;

        function showValue(obj) {
            //当查询日期不为空时,就触发查询按钮。
            if (obj != "" && obj != oldValue) {
                oldValue = obj;
                $('#txtName').get(0).select();
                $("#hiddenDate").val(obj);
                $('#btnHid').trigger("click");
                return false;
            }
        }
    </script>
javascript代码主要是判断当前选中日期不为空,并且是选择的一个新日期。才会触发一个

隐藏控件的OnValueChanged,也可以触发一个按钮事件,都可以达到目的。日期控件的事件

就是 onpropertychange="showValue(this.value)"用javascript代码。
下面就是后台代码了:

    //根据用户选择的时间查询。
    protected void hiddenDate_ValueChanged(object sender, EventArgs e)
    {
       //后台代码
    }

    //根据用户选择的时间查询。
    protected void btnHid_Click(object sender, ImageClickEventArgs e)
    {
        //后台代码
    }
这两个都可以用。
这篇博文只要说明的是怎么用前台非服务器控件文本框(虽然本篇博文用的是服务器控件,但

是HTML控件也是一样的效果。),文本的改变触发后台事件,以执行后台代码。嘿嘿,不错吧!

更多技术学习请见.net教程之《VS2010轻松学习C#-从零到深入-天轰穿.NET4趣味编程视频教程》更系统的教程讲解

 

 

论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics