问题描述
- ASP.NET动态添加节点 实现每次单击动态生table中的行列
-
点击这个添加更多动态复制上面的div中的table里面的控件 后台可以获取到每个table中标签的id 或者直接可以获取 多个table中控件上的数据我是asp的新手不清楚这个 这个服务器的控件的js代码怎么写 或者可以直接在控件的添加更多事件里面实现
<div id="divtable"> <table class="add_table" id="table" width="100%"> <tr> <td width="90">产品编号</td> <td> <asp:TextBox ID="product_no" runat="server" TextMode="Number"></asp:TextBox> <asp:RequiredFieldValidator ID="reg_no" runat="server" ErrorMessage="?请输入编号" ControlToValidate="product_no" ForeColor="Black"></asp:RequiredFieldValidator> </td> </tr> <tr> <td width="90" class="auto-style1">产品名称</td> <td class="auto-style1"> <asp:TextBox ID="product_name" runat="server"></asp:TextBox> <asp:RequiredFieldValidator ID="reg_name" runat="server" ErrorMessage="?请输入名称" ControlToValidate="product_name"></asp:RequiredFieldValidator> </td> </tr> <tr> <td width="90">产品价格</td> <td> <asp:TextBox ID="product_price" runat="server" TextMode="Number"></asp:TextBox> <asp:RequiredFieldValidator ID="reg_price" runat="server" ErrorMessage="?请输入价格" ControlToValidate="product_price"></asp:RequiredFieldValidator> </td> </tr> <tr> <td width="90">产品型号</td> <td> <asp:TextBox ID="product_model" runat="server"></asp:TextBox><asp:RequiredFieldValidator ID="reg_mod" runat="server" ErrorMessage="?请输入型号" ControlToValidate="product_model" Width="100px"></asp:RequiredFieldValidator> <asp:FileUpload ID="selectfile" runat="server" ToolTip="请选择文件" /> </td> </tr> <tr> <td width="90">产品描述</td> <td> <asp:TextBox ID="product_introduce" runat="server" Width="524px" TextMode="MultiLine" Height="24px"></asp:TextBox> </td> </tr> </table> <div align="center"> <asp:Button ID="addmore" runat="server" Text="↓添加更多" OnClick="addmore()" /> <br /> <br /> <asp:Button ID="btnDo" runat="server" Text="执行操作" OnClick="btnDo_Click" /> </div> </div> </asp:Content>
解决方案
客户端直接clone你的table添加到dom中就好了吧,干嘛要通过服务器端控制,这个是要刷新过页面的
解决方案二:
完蛋,自动格式把html标记吃掉了,重新用代码格式贴一遍试试。
这个服务端做比较容易。
把整个Table的内容(不包括<table>和</table>)用一个<asp:repeater>包起来,绑定一个 datatable;(addmore.click中)你给 datatable 多添加一行,就会多生成一次内容。
解决方案三:
这个服务端做比较容易。
把整个Table的内容(不包括
)用一个asp:repeater包起来,绑定一个 datatable;(addmore.click中)你给 datatable 多添加一行,就会多生成一次内容。
解决方案四:
Tiger_Zhao
你看 是这样吗
<table class="add_table" id="table" width="100%">
<asp:Repeater ID="Repeater1" runat="server">
<tr>
<td width="90">产品编号</td>
<td>
<asp:TextBox ID="product_no" runat="server" TextMode="Number"></asp:TextBox>
<asp:RequiredFieldValidator ID="reg_no" runat="server" ErrorMessage="?请输入编号" ControlToValidate="product_no" ForeColor="Black"></asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td width="90" class="auto-style1">产品名称</td>
<td class="auto-style1">
<asp:TextBox ID="product_name" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="reg_name" runat="server" ErrorMessage="?请输入名称" ControlToValidate="product_name"></asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td width="90">产品价格</td>
<td>
<asp:TextBox ID="product_price" runat="server" TextMode="Number"></asp:TextBox>
<asp:RequiredFieldValidator ID="reg_price" runat="server" ErrorMessage="?请输入价格" ControlToValidate="product_price"></asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td width="90">产品型号</td>
<td>
<asp:TextBox ID="product_model" runat="server"></asp:TextBox><asp:RequiredFieldValidator ID="reg_mod" runat="server" ErrorMessage="?请输入型号" ControlToValidate="product_model" Width="100px"></asp:RequiredFieldValidator>
<asp:FileUpload ID="selectfile" runat="server" ToolTip="请选择文件" />
</td>
</tr>
<tr>
<td width="90">产品描述</td>
<td>
<asp:TextBox ID="product_introduce" runat="server" Width="524px" TextMode="MultiLine" Height="24px"></asp:TextBox>
</td>
</tr>
</asp:Repeater>
</table>
时间: 2024-07-28 15:00:33