如何在jquery

时间:2017-07-11 11:25:51

标签: c# jquery asp.net webforms

我正在尝试动态创建文本框。我可以通过以下代码成功创建它:

var parentTable = $('<table border="0" class="table table-bordered" width="100%" id="searchInformation"/>');
var tr = $("<tr class='searchEntitydata'/>");
var tr2 = $("<tr class='searchEntitydata1'/>");

tr.append("<td id='HQNametd'>  <label ID='hqName'>HQ Name</label>  <input type='textBox' id='textboxSearch' placeholder='Search HeadQuarter'> </td>");
tr.append("<td id='HQIDtd'>  <label ID='hqId'>HQ ID</label>  <input type='textBox' id='textboxSearchHQId' placeholder='Search ID'> </td>");
tr.append("<td id='BranchNametd'>  <label ID='BranchName'>Branch Name</label>  <input type='textBox' id='textboxSearchBranchName' placeholder='Search Branch Name'> </td>");
tr.append("<td id='BranchIdtd'>  <label ID='BranchId'>Branch Id</label>  <input type='textBox' id='textboxSearchBranchId' placeholder='Search Branch ID'> </td>");

tr2.append("<td id='Citytd'>  <label ID='City'>City</label>  <input type='textBox' id='textboxSearchBranchId' placeholder='Search Branch ID'> </td>");
tr2.append("<td id='Statetd'>  <label ID='State'>State</label>  <input type='textBox' id='textboxSearchBranchId' placeholder='Search Branch ID'> </td>");

parentTable.append(tr);
parentTable.append(tr2);
$('#confirmSearch').append(parentTable);

但是,当我从input type=textBox更改文本框类型时 要asp:TextBox使用runat='server',我收到错误消息。

有什么方法可以用runat=server动态创建文本框?

1 个答案:

答案 0 :(得分:1)

您无法从jQuery或任何客户端脚本添加asp-runat =“server”标记。而是使用以下命令从服务器端动态生成文本框,将代码封装在ajax控件工具包更新面板中。

C#:(点击或页面加载或任何服务器端事件)

TextBox tbOne = new TextBox();
Label lblOne = new Label();
lblOne.ID = "lblId";
lblOne.Text = "My label";
lblOne.Width = 200;

tbOne.ID = "tbId";
tbOne.Text = "xyz";
pnl.Controls.Add(lblOne);
pnl.Controls.Add(tbOne);

<强> ASPX:

<asp:Panel ID="pnl"Width="100%" runat="server">
    </asp:Panel>