ASP.NET 中 使用datepicker 日期选择的时候,如果INPUT控件或者TEXTBOX控件写了runat="server" 就无法调用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ASP.NET 中 使用datepicker 日期选择的时候,如果INPUT控件或者TEXTBOX控件写了runat="server" 就无法调用相关的知识,希望对你有一定的参考价值。

<input type="text" id="txtETO" />这样就可以点击显示日期选择界面。
如果是
<asp:TextBox runat="server" ID="txtETO"></asp:TextBox> 这样就无法调出日期选择界面。
请问下这是怎么回事

因为你换成服务端控件之后 你的ID变掉了。 你是用的模板页吧?

var txtid= '<%=txtETO.ClientID %>';

把js里的ID换成这个就行了 你试试。
参考技术A 1.首先引用js
<head>
<script language="javascript" type="text/javascript" src="../../My97DatePicker/WdatePicker.js"></script>
<head>

2.界面代码
aspx页面: <input class="Wdate" type="text" onfocus="new WdatePicker(this,null,false,'whyGreen')" id="Date1" runat="server" size="13"/>
3.cs代码
string date1 = this.Date1.Value.Trim();
就能获取到值!

试一下追问

首先感谢您的回答。
我不是取不到值,取值是正常的。
是只要在要填写时间的控件里一加上runat="server"就调用不到时间选择控件了

追答

上面的代码是我用的,我就可以调用到!可否把你的代码贴出来!

参考技术B try
//datepicker
if ($.browser.msie)
$("#txtETO").datepicker( changeYear: true, showAnim: '',minDate:"2012-01-01" );
else
$("#txtETO").datepicker( changeYear: true, minDate: "2012-01-01" );
catch (e)
参考技术C 你用的是js制作的datetimepicker还是自带的?一般都是用客户端的textbox,然后用ajax传回后台的追问

JQUERY的。

追答

是不是缺少事件?控件是那个对象什么事件触发的?只是按照文本框id触发的吗?

追问

是的

$(function ()
$('#txtETO').datetimepicker()
);
一切都没问题,只要一加上runat="server"就不行了

以上是关于ASP.NET 中 使用datepicker 日期选择的时候,如果INPUT控件或者TEXTBOX控件写了runat="server" 就无法调用的主要内容,如果未能解决你的问题,请参考以下文章

ASP.NET MVC3:使用 JQuery DatePicker 和 editorFor/TextBoxFor 以正确的格式显示日期

asp.net页面My97 DatePicker日期控件的使用

asp.net jquery datepicker bug

ASP.Net MVC jQuery UI DatePicker 日期格式

ASP.NET 中 使用datepicker 日期选择的时候,如果INPUT控件或者TEXTBOX控件写了runat="server" 就无法调用

ASP.NET DatePicker 在 GridView 中不起作用