C#教程

关注公众号 jb51net

关闭
首页 > 软件编程 > C#教程 > 值改变后触发后台代码

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

作者:

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 = https://www.jb51.net/Health/archive/2012/02/10/today.getFullYear() +"-" + todayMonth + "-" + todayDate;

        function showValue(obj) {
            //当查询日期不为空时,就触发查询按钮。
            if (obj != "" && obj != oldValue) {
                oldValue = https://www.jb51.net/Health/archive/2012/02/10/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控件也是一样的效果。),文本的改变触发后台事件,以执行后台代码。

您可能感兴趣的文章:
阅读全文