2015-02-06 29 views
0

我有几个动态html项目由jquery和/或JS填充,但由于某些原因,C#将只能看到页面加载时的原始值。C#没有采用ASP或HTML元素的变化

<form class="form-horizontal"> 
          <div class="form-group"> 
           <label class="col-sm-3">Date</label> 
           <div class="col-sm-9"> 
            <asp:ToolkitScriptManager ID="tsm" runat="server" /> 
            <asp:TextBox CssClass="btn btn-default pull-right" ID="calBtn" runat="server" Style="width: 150px">Click Here</asp:TextBox> 
            <asp:CalendarExtender ID="calExt" TargetControlID="calBtn" runat="server" /> 
           </div> 
          </div> 
          <div class="form-group"> 
           <label class="col-sm-5"> 
            Start (Actual Begin Time)</label> 
           <div class="col-sm-7"> 
            <%--<input runat="server" id="startTime" class="time btn btn-default pull-right" type="text" autocomplete="off" style="width: 150px" />--%> 
            <asp:TextBox runat="server" ID="startTime" CssClass="time btn btn-default pull-right" AutoCompleteType="Disabled" Style="width: 150px"></asp:TextBox> 
           </div> 
          </div> 
          <div class="form-group"> 
           <label class="col-sm-4">End</label> 
           <div class="col-sm-8"> 
            <%--<input runat="server" id="endTime" class="time btn btn-default pull-right disabled" type="text" autocomplete="off" style="width: 150px" />--%> 
            <asp:TextBox runat="server" ID="endTime" CssClass="time btn btn-default pull-right" AutoCompleteType="Disabled" Style="width: 150px"></asp:TextBox> 
           </div> 
          </div> 
         </form> 

上面的asp:TextBox项目我已经注释掉了我原来的“输入”元素,因为我尝试了这两种方法。如果我在C#中调用string date = calBtn.Text,它会说“Click here”作为返回值。我也试过date = calExt.SelectedDate,它返回空。

在文本框中,我尝试过.Text.SelectedValue,但仍为空。

+2

不知道你是否有其他地方,但表单确实需要'runat =“server”'。 – 2015-02-06 17:32:52

+1

@DrewKennedy我确实在该部分之外。这个片段只是整个表格的一小部分。 – lostchopstik 2015-02-06 17:33:53

回答

0

@DrewKennedy有正确的想法。我将Bootstrap的所有这些<form>标记嵌套在了它的后面,导致它在服务器端看不到。我错误地认为我需要嵌套表单来使CSS工作。

我已经有一个围绕整个身体的<form runat="server">,但更改内部<form class="form-horizontal"><div class="form-horizontal">修复了这个问题。

0

ASP.NET只支持ONE SINGLE。所以你必须在你的表单makup上添加runat = server

现在它为我工作。