数据是动态生成的,现在要修改数据,文本框里用的是My97DatePicker 的时间控件,
文本框输入值,当失去焦点时文本框值为空了,怎么解决啊,不想让它为空,想让它输入什么就是什么
MVC.netC#

解决方案 »

  1.   

    在控件里onfocus事件里可以处理WdatePicker代码,再结合你自定义的js代码。
    参考下面红色部分 <asp:TextBox ID="txtPartyDate" runat="server" ReadOnly="true" class="textbox110" onfocus="WdatePicker({onpicked:function(){CaclWeek($dp.cal.getDateStr());}});"></asp:TextBox>js里定义一个函数
    //计算星期
    function CaclWeek(date)
    {
        这里写代码
    }
      

  2.   

    我用的是input控件
    '<input id="rq_' + rowData.ID + '" type="text" class="text-input" onclick="WdatePicker();" value="' + value + '">';
    ID和值都是动态绑定的,也可以像你说的那样吗,我要选取时间,不用计算什么,我是菜鸟不太明白你的意思
      

  3.   


    我用的是input控件
    '<input id="rq_' + rowData.ID + '" type="text" class="text-input" onclick="WdatePicker();" value="' + value + '">';
    ID和值都是动态绑定的,也可以像你说的那样吗,我要选取时间,不用计算什么,我是菜鸟不太明白你的意思 
      

  4.   

    再说你应该让用户去选日期,而不是输日期,输日期不好控制,用户有可能瞎输入
    你把input 的readonly设置true,不要让用户输,让用户选
      

  5.   


    大侠这是我datagrid的代码:
    { field: 'ProductionDate', title: '生产日期', width: 100, formatter: formatText2, align: 'center' }这个是调用的formatter方法:
     var formatText2 = function (value, rowData, rowIndex) {
                if (value == "hide") {
                    return '<input id="rq_' + rowData.ID + '" type="text" style="display:block" onclick="" class="text-input" value="' + value + '">';
                }
                if (value == null)
                    value = '';
                return '<input id="rq_' + rowData.ID + '" type="text" class="text-input" ReadOnly="true" onclick="WdatePicker();" value="' + value + '">'; //WdatePicker();
            };