简体   繁体   English

如何从asp.net中的javascript在转发器控件中添加新行

[英]how to add a new row in repeater control from javascript in asp.net

I have using the following HTML block within a Repeater control. 我在Repeater控件中使用了以下HTML块。 I can add rows to the HTML table from client side (JavaScript) and values are added. 我可以从客户端(JavaScript)向HTML表添加行,并添加值。 When the page post backs by a button click, the table become empty. 单击按钮后,页面发帖后,该表将变为空。 But I am not able to get the values from the binding repeater control in server side too. 但是我也无法从服务器端的绑定转发器控件中获取值。 It shows nothing. 它什么也没显示。 How can I add the values to repeater from client side or binding with HTML table ? 如何从客户端将值添加到转发器或与HTML表绑定?

<table id="tblSelectlist" class="table table-striped table-bordered table-hover">
    <thead>
        <tr>
            <th>
                Name
            </th>
            <th class="hidden-480">
                City
            </th>
            <th class="hidden-480">
                State
           </th>
       </tr>
    </thead>
    <tbody>
        <asp:repeater id="repSelectlist" runat="server" enableviewstate="true">
            <ItemTemplate>
                <tr>
                    <td class="left">
                        <label id="lblSelectcompany" runat="server">
                            <%# DataBinder.Eval(Container.DataItem, "DataItem.CustName")%></a>
                        </label>
                    </td>
                    <td class="hidden-480">
                        <label id="lblSelectCity" runat="server">
                            <%# DataBinder.Eval(Container.DataItem, "DataItem.custCity")%>
                        </label>
                    </td>
                    <td>
                        <label id="lblSelectState" runat="server">
                            <%# DataBinder.Eval(Container.DataItem, "DataItem.custstate")%>
                        </label>
                    </td>  
                </tr>
            </ItemTemplate>
        </asp:repeater>
    </tbody>
</table>

If I use runat="server" for the HTML table, it shows the following error: 如果我对HTML表使用runat="server" ,则会显示以下错误:

Value of type 'System.Web.UI.WebControls.Repeater' cannot be converted to 'System.Web.UI.HtmlControls.HtmlTableRow'. 类型'System.Web.UI.WebControls.Repeater'的值不能转换为'System.Web.UI.HtmlControls.HtmlTableRow'。

Use the HeaderTemplate and FooterTemplate sections of the repeater control. 使用转发器控件的HeaderTemplate和FooterTemplate部分。

<asp:repeater id="repSelectlist" runat="server" enableviewstate="true">
<HeaderTemplate>
  <table id="tblSelectlist" class="table table-striped table-bordered table-hover">
  <thead>
  <tr>
  <th>
  Name
  </th>
  <th class="hidden-480">
  City
  </th>
  <th class="hidden-480">
  State
  </th>
  </tr>
  </thead>
  <tbody>
</HeaderTemplate>

<ItemTemplate>
 <tr>
 <td class="left">
 <label id="lblSelectcompany" runat="server">
 <%# DataBinder.Eval(Container.DataItem, "DataItem.CustName")%></a>
 </label>
 </td>
 <td class="hidden-480">
 <label id="lblSelectCity" runat="server">
 <%# DataBinder.Eval(Container.DataItem, "DataItem.custCity")%>
 </label>
 </td>
 <td>
 <label id="lblSelectState" runat="server">
 <%# DataBinder.Eval(Container.DataItem, "DataItem.custstate")%>
 </label>
 </td>                                                                              
 </tr>
</ItemTemplate>

<FooterTemplate>
  </tbody>
  </table>
</FooterTemplate>
</asp:repeater>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM