2017-11-14 3 views
0

Ich möchte ASP controlID jedes Mal erhöhen, wenn ich auf die Schaltfläche klicken. Zum Beispiel das Hinzufügen weiterer Telefonnummern. Jedes Mal, wenn ein neues Asp: Textfeld hinzugefügt wird, sollte eine neue ID erstellt werden. Das Hinzufügen von mehr Div/Textbox funktioniert gut, aber ID jedes Textfelds ist gleich.asp.net js controlID dynamisch erhöhen

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); 
 
     
 
    }

kann jemand helfen?

+0

Sie können keine Server-Seite Steuerung wie 'hinzufügen ' in JavaScript. Es wurde zu html hinzugefügt, aber es funktioniert nicht, da es auf der Client-Seite nicht gerendert wird. –

Antwort

1

ID ist gleich, weil Sie HTML mit der gleichen ID generieren.

//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); 

    } 

ändern es zu diesem Code

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); 

    } 
+0

Ich würde etwas ähnliches antworten: p –

+0

@TusharShukla Sicher kannst du :) – Hey24sheep

+0

Ich habe versucht, wie Sie sagten. Es sagt "'+ ID +'" ist kein gültiger Bezeichner. –