【问题标题】:JQuery date picker does not set hidden field value in asp.net webformJQuery 日期选择器未在 asp.net webform 中设置隐藏字段值
【发布时间】:2012-10-29 20:41:45
【问题描述】:

在网络表单中,我有一个 jquery datepicker,它绑定到 ui 中的文本字段,而该文本字段又绑定到隐藏字段(asp 隐藏字段不是 html)

<div class="dateContainer">
     <span class="fbSmallLabel">Start Date</span>
        <input id="txtStartDate" class="datequeryterm" type="text" value="<%= ((HiddenField)Parent.FindControl("hdnStartDate")).Value %>" />
 </div>

When a date is selected the hndfield is updated which then updates the value in the textbox

$("#btnApplyFilter").click(function () {
        setFilterFields();
        $.modal.close();
    }); 

function setFilterFields() {       
        var startDate = $("#txtStartDate").val();
        var endDate = $("#txtEndDate").val();

        $("#hdnStartDate").val(startDate);
        $("#hdnEndDate").val(endDate);
    }

使用 firebug 或 IE 开发工具,我可以看到隐藏字段在 DOM 中已更新,但是当我从 webform 引用隐藏字段时,我得到一个 null "" 值。

protected void SetSearchFilterData()
{
   DateTime dt;
   string StartDate = hdnStartDate.Value;
   string EndDate = hdnEndDate.Value;

   if (DateTime.TryParse(StartDate, out dt))
   {           
     srchRequest.DateRangeStart = DateTime.Parse(StartDate);
   }

   if (DateTime.TryParse(EndDate, out dt))
   {   
     srchRequest.DateRangeEnd = DateTime.Parse(EndDate);
   }
}

该方法有点基本,因为我试图明确地查看变量赋值发生了什么。 以前我是通过以下方式声明开始日期和结束日期

public string StartDate
{
  get { return hdnStartDate.Value; }
  set { hdnStartDate.Value = value; }
}

虽然这确实检测到该字段,但该值仍然为空。

任何建议将不胜感激

-干杯

【问题讨论】:

  • 隐藏字段值能否在 pageLoad 上重置?
  • @JoshMein 不,这就是我的想法,但在查看并非如此的萤火虫时,我可以在应用它们后看到这些值并且它们没有被重置。但是,当在单击事件上从网络表单调用时,该值为 null,但仅针对日期。其他隐藏字段保留其值。

标签: jquery asp.net jquery-ui hidden-field


【解决方案1】:

你发布的input标签没有name所以它不会提交任何表单数据

【讨论】:

  • 他发布的输入不是他的隐藏字段之一。
  • @JoshMein 隐藏的很可能也没有名字
  • 如果隐藏字段没有它,那么他将如何抓住服务器端的控制权?它会抛出一个错误。他没有提到任何关于引发错误的事情。
  • 输入标签通过 JavaScript(第二个 sn-p)将其值传递给 asp:hidden 字段。输入标签在后面的代码中没有被引用。隐藏字段是一个asp.net隐藏控件。它的 ID 是上面列出的 hdnstartdate 或 hdnenddate 选择器。这两个都可以从代码中引用
猜你喜欢
  • 1970-01-01
  • 2021-12-08
  • 1970-01-01
  • 2019-12-16
  • 2015-01-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多