您的位置:首页 > Web前端 > HTML

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

2012-02-20 09:53 316 查看
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 + "-" +
4000
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控件也是一样的效果。),文本的改变触发后台事件,以执行后台代码。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息