JavaScript
Article

Get Client IP Using jQuery

By Sam Deering

A few code snippets to Get Client IP Using JavaScript/jQuery.

1. One way

This one gives you longitude/latitude and timezone.

Try it!

$(document).ready( function() { $.getJSON( "http://smart-ip.net/geoip-json?callback=?", function(data){ alert( data.host); } );});

Returns:

?(
{
   source: "smart-ip.net",
   host: "14.200.158.65",
   lang: "en",
   countryName: "Australia",
   countryCode: "AU",
   city: "South Sydney Municipality",
   region: "New South Wales",
   latitude: "-33.9000",
   longitude: "151.2000",
   timezone: "Australia/NSW"
}
)

2. Two way

This one provides JSON.

Try it!

function myIP() {
    if (window.XMLHttpRequest) xmlhttp = new XMLHttpRequest();
    else xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
 
    xmlhttp.open("GET"," http://api.hostip.info/get_html.php ",false);
    xmlhttp.send();
 
    hostipInfo = xmlhttp.responseText.split("n");
 
    for (i=0; hostipInfo.length >= i; i++) {
        ipAddress = hostipInfo[i].split(":");
        if ( ipAddress[0] == "IP" ) return ipAddress[1];
    }
 
    return false;
}
 
// console.log(myIP());

Returns:

{
  country_name: "UNITED STATES",
  country_code: "US",
  city: "(Unknown city)",
  ip: "14.200.158.65"
}

3. Three way

Try it!

http://l2.io/ip.js
Syntax : http://l2.io/ip
Diplay Client IP address
--> x.x.x.x

Syntax : 
Display Client IP address in your HTML page using javascript
--> document.write('x.x.x.x');

Syntax : 
Set javascript variable "myip" to client IP address
--> myip = "x.x.x.x";
  • Franz

    Boy you a god

  • JC

    the Third Option is what I need. But I have to get the country name also>? Any suggestions

  • Tberry Apapa

    Good stuff mate… good stuff!

  • http://www.codesarena.com/ Anirudh Anand

    How can I modify this code so that I can pass a domain name to the PHP script which can return the host IP address instead of the client Ip address ?

  • Ratheesh K

    Hey this code just return gateway ip address not client ip. because i have tried from different machine it is return same IP

Recommended

Learn Coding Online
Learn Web Development

Start learning web development and design for free with SitePoint Premium!

Get the latest in JavaScript, once a week, for free.