Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Getting ID from asp.net runat server in jQuery

I'm trying make some stuff in jQuery using ASP.NET. But the ID from runat="server" is not the same as the id used in HTML.

I used to use this to get the ID from this situation:

$("#<%=txtTest.ClientID%>").val();

But in this case, it does not work. I'm clueless as to why.

Javascript

/* Modal */
function contatoModal() {
    //alert("Test");
    alert($("#<%=txtTest.ClientID%>").val());
}

HTML

< input runat="server" id="txtTest" value="test" />

Any tips?

like image 299
Michel Ayres Avatar asked Mar 22 '11 14:03

Michel Ayres


3 Answers

To avoid issues with rendered ID's, use a class instead. This won't change during rendering:

function contatoModal() {

//alert("Test");

alert($(".txtTest").val());

}

HTML:

< input runat="server" id="txtTest" value="test" class="txtText" />
like image 151
Curtis Avatar answered Oct 02 '22 07:10

Curtis


<%= txtTest.ClientID %> should work but not in a separate javascript file where server side scripts do not execute. Another possibility is to use a class selector:

<input runat="server" id="txtTest" value="test" class="txtTest" />

and then:

var value = $('.txtTest').val();
like image 22
Darin Dimitrov Avatar answered Nov 05 '22 07:11

Darin Dimitrov


In WebForm / HTML Page....

<asp:TextBox ID="txtUserName" runat="server" Class="form-control"></asp:TextBox>  

In Jquery

var UserName = $("[id*=txtUserName]").val();
alert(UserName);

100% Sure its Working for me....

like image 6
Ahsan Aftab Avatar answered Nov 05 '22 06:11

Ahsan Aftab