在jQuery中找到具有IP地址的网络地址

时间:2015-06-29 12:37:10

标签: jquery ip

假设我们有一个IP地址,例如:192.168.1.1/24,如何从这个地址找到网络地址?

我试图删除IP地址,以便用0替换最后一个字符,但它不起作用。

$('.ip').val().replace($('.ip').val().split('/')[0].split('.')[3], 0);

其中$('.ip')是类名为ip的输入的选择器。

返回092.168.1.1/24。预期的结果是:192.168.1.0/24

2 个答案:

答案 0 :(得分:1)

使用第三方服务可能是您的最佳选择:

$(document).ready(function () {
    $.getJSON("http://jsonip.com/?callback=?", function (data) {
        var ip = data.ip;
    });
});

你可以尝试的其他方法是使用Jquery的ajax函数来获取你在服务器上创建的PHP文件的内容,并在那个php文件中使用

$ip=$_SERVER['REMOTE_ADDR'];
echo "IP address= $ip"; 

答案 1 :(得分:1)

以下内容将为您提供所需的结果:

$('.ip').val(function(_, value) {
   return value.replace(/\d+(\/\d+)$/, '0$1');
});

\d+(\/\d+)$替换一个或多个数字,后跟一个正斜杠(/)和一个数字(在给定字符串的末尾)。

0$1是替代品,因此0后跟与()之间的表达式匹配的值(在示例中为/24

只是旁注,这没有CIDR表示法的概念(即如果CIDR被更改,结果将是相同的 - 它是一个简单的字符串替换)