我希望每次单击按钮时都增加ASP controlID。喜欢添加更多电话号码。每次添加新的asp:textbox时,都应创建新的ID。 添加更多div /文本框工作正常,但每个文本框的ID都相同。
function GetDynamicMobileNo(value) {
return '<div><asp:TextBox ID="txtAddMoreNumber" runat="server" CssClass="form-control" MaxLength="11" Placeholder="Mobile No"></asp:TextBox></div></br>';
}
function AddMobileNo() {
var div = document.createElement('DIV');
div.innerHTML = GetDynamicMobileNo("");
document.getElementById("MobileNoContainer").appendChild(div);
}
&#13;
任何人都可以提供帮助?
答案 0 :(得分:1)
Id是相同的,因为您正在生成具有相同Id的HTML。
//Here is your problem
function GetDynamicMobileNo(value) {
return '<div><asp:TextBox ID="txtAddMoreNumber" runat="server" CssClass="form-control" MaxLength="11" Placeholder="Mobile No"></asp:TextBox></div></br>';
}
function AddMobileNo() {
var div = document.createElement('DIV');
div.innerHTML = GetDynamicMobileNo("");
document.getElementById("MobileNoContainer").appendChild(div);
}
将其更改为此代码
function GetDynamicMobileNo(value, id) {
return "<div><asp:TextBox ID=\" + id + \" runat=\"server\" CssClass=\"form-control\" MaxLength=\"11\" Placeholder=\"Mobile No\"></asp:TextBox></div></br>";
}
function AddMobileNo() {
var div = document.createElement('DIV');
div.innerHTML = GetDynamicMobileNo("", someRandomIdGenerator());
document.getElementById("MobileNoContainer").appendChild(div);
}