通过jquery在文本框中保留输入日期日期选择器
我想在获取报告后在文本字段中保留值。文本框有默认的当前日期,但可以通过jquery datepicker分配一个新的值。所以当我选择一个日期(例如27/10/2015)时,它应该在获得报告后保留在文本框中。问题是当我搜索记录值重置为当前日期。谁能帮忙?这里通过jquery在文本框中保留输入日期日期选择器
<input runat="server" id="txtstartDate" type="text" />
<input runat="server" id="txtFinishDate" type="text" />
JQuery的
<script>
$(document).ready(function() {
$(function() {
$("#txtstartDate").datepicker().datepicker("setDate", new Date());
$("#txtFinishDate").datepicker().datepicker("setDate", new Date());
});
});
是的,我回答我的问题,以改变
<input runat="server" id="txtstartDate" type="text" />
<input runat="server" id="txtFinishDate" type="text" />
到
<asp:TextBox runat="server" ID="txtstartDate" />
<asp:TextBox runat="server" ID="txtFinishDate" />
和
$(document).ready(function() {
$(function() {
$("#txtstartDate").datepicker().datepicker("setDate", new Date());
$("#txtFinishDate").datepicker().datepicker("setDate", new Date());
});
});
。因此,根据我的要求,我必须将当前日期填充为默认值,并且必须根据需要从datepicker中选择日期。而且我也必须在得到报告后保留价值。所以,首先我改变
<input runat="server" id="txtstartDate" type="text" />
<input runat="server" id="txtFinishDate" type="text" />
到
<asp:TextBox runat="server" ID="txtstartDate" />
<asp:TextBox runat="server" ID="txtFinishDate" />
,然后在页面加载
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
txtstartDate.Text = DateTime.Today.Date.ToString("dd/MM/yyyy");
txtFinishDate.Text = DateTime.Today.Date.ToString("dd/MM/yyyy");
}
}
填充这些文本框和jQuery的我这两个文件只defind日期选择器。
<script>
$(document).ready(function() {
$("[id$='txtstartDate']").datepicker();
$("[id$='txtFinishDate']").datepicker();
});
</script>
这就是我想出的解决方案。希望这可能对其他人有帮助。
除了您设置默认日期时间服务器端以外,是不是与我的代码相同? – Imad
是的,这是现在的整点,而不是在jQuery中初始化日期,我现在正在初始化服务器端。 –
问题是ViewState
。它回发后检索您的值。当您生成报告时,您正在发布这些值,并且因为您使用了html
控件而没有收回它们。您应该使用Asp.Net
控件来利用ViewState
。你只需要通过
$(document).ready(function() {
$(function() {
if($("[id$='txtstartDate']").val() == "")
$("[id$='txtstartDate']").datepicker().datepicker("setDate", new Date());
if($("[id$='txtFinishDate']").val() == "")
$("[id$='txtFinishDate']").datepicker().datepicker("setDate", new Date());
});
});
感谢您的回复。但对不起,它没有奏效。其设置当前日期。我已经将html更改为asp控件,甚至在更改jquery函数后,它会设置当前日期。你能否提出其他建议?我将非常感谢 –
'$(“[id $ ='txtstartDate']”)。datepicker()。datepicker(“setDate”,new Date());'这是设置当前日期。你为什么需要这些线? – Imad
其默认值应该是当前日期。并且如果有人想要选择不同的日期,则他可以从日期选择器中选择不同的日期。 –
显示一些代码.. – Saif
@Saif编辑我的问题 –