mac地址检查函数
方法一:
var temp = /[A-Fa-f0-9]{2}:[A-Fa-f0-9]{2}:[A-Fa-f0-9]{2}:[A-Fa-f0-9]{2}:[A-Fa-f0-9]{2}:[A-Fa-f0-9]{2}/;
if (!temp.test(document.mac.value))
{
return false;
}
使用测试
function check_mac_ipv6(mac)
{
var temp = /[A-Fa-f0-9]{2}:[A-Fa-f0-9]{2}:[A-Fa-f0-9]{2}:[A-Fa-f0-9]{2}:[A-Fa-f0-9]{2}:[A-Fa-f0-9]{2}/;
if (!temp.test(mac))
{
console.log("----------the mac form is not right-----")
return false;
}
}
function btnApplyv6()
{
console.log("21")
//document.StaticDHCPv6ConfigForm.StaticDHCPv6_Flag.value = "2";
//chekc mac form is right or not:
var mac = document.StaticDHCPv6ConfigForm.MacAddressv6.value
console.log(mac)
if(check_mac_ipv6(mac) == false)
{
console.log("mac is error!")
return
}
方法二:
function macFormCheck(mac)
{
var macs = new Array();
macs = mac.split(":");
if(macs.length != 6){
alert("输入的mac地址格式不正确,请以xx:xx:xx:xx:xx:xx的形式输入(xx为16进制数字)!");// 一个网在线教程 http://yige.org/js/
return false;
}
for (var s=0; s<6; s++) {
var temp = parseInt(macs[s],16);
if(isNaN(temp))
{
alert("输入的mac地址格式不正确,请以xx:xx:xx:xx:xx:xx的形式输入(xx为16进制数字)!");
return false;
}
if(temp < 0 || temp > 255){
alert("输入的mac地址格式不正确,请以xx:xx:xx:xx:xx:xx的形式输入(xx为16进制数字)!");
return false;
}
}
return true;
}
test() 方法用于检测一个字符串是否匹配某个模式.
如果字符串中有匹配的值返回 true ,否则返回 false。
ipv6格式检测:
/*
* 判断ipv6格式
* @author gblfy
*
* @version 2021-05-26
* */
function isIPv6(tmpstr) {
//CDCD:910A:2222:5498:8475:1111:3900:2020
var patrn=/^([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$/i;
var r=patrn.exec(tmpstr)
if(r) {
return true;
}
if(tmpstr=="::"){
return true;
}
//F:F:F::1:1 F:F:F:F:F::1 F::F:F:F:F:1格式
patrn=/^(([0-9a-f]{1,4}:){0,6})((:[0-9a-f]{1,4}){0,6})$/i;
r=patrn.exec(tmpstr);
if(r) {
var c=cLength(tmpstr);
if(c<=7 && c>0) {
return true;
}
}
//F:F:10F::
patrn=/^([0-9a-f]{1,4}:){1,7}:$/i;
r=patrn.exec(tmpstr);
if(r) {
return true;
}
//::F:F:10F
patrn=/^:(:[0-9a-f]{1,4}){1,7}$/i;
r=patrn.exec(tmpstr);
if(r) {
return true;
}
//F:0:0:0:0:0:10.0.0.1格式
patrn=/^([0-9a-f]{1,4}:){6}(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/i;
r=patrn.exec(tmpstr);
if(r) {
if(r[2]<=255 && r[3]<=255 &&r[4]<=255 && r[5]<=255 )
return true;
}
//F::10.0.0.1格式
patrn=/^([0-9a-f]{1,4}:){1,5}:(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/i;
r=patrn.exec(tmpstr);
if(r) {
if(r[2]<=255 && r[3]<=255 &&r[4]<=255 && r[5]<=255 )
return true;
}
//::10.0.0.1格式
patrn=/^::(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/i;
r=patrn.exec(tmpstr);
if(r) {
if(r[1]<=255 && r[2]<=255 &&r[3]<=255 && r[4]<=255)
return true;
}
return false;
}
————————————————
版权声明:本文为CSDN博主「gblfy」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_40816738/article/details/117286085
exec() 方法用于检索字符串中的正则表达式的匹配。
如果字符串中有匹配的值返回该匹配值,否则返回 null。
input
input 添加提示的文字
<input type="text" placeholder="这里是提示的文字">
js 方法添加 input 元素提示文字
<input type="text" onfocus="javascript:if(this.value=='请输入内容')this.value='';">
异常处理
try{
if (true == (document.getElementById("ipv6_del_flag3")).checked)
{
console.log("chose del 33");
document.StaticDHCPv6ConfigForm.del_StaticDHCPv6_Flag3.value = "1"
}
}catch(error){
console.log("no problem")
}
判断字符包含
`var` `ss=``"hello monkey!"`
`console.log(ss.indexOf(``'monkey'``))``// 如果包含,则返回查询字符串的个数,不包含则返回-1;`
`console.log(ss.includes(``'qmonkey'``))``//如果包含则返回true,反之则为false`
替换
const myMessage = 'this is the sentence to end all sentences';
const newMessage = myMessage.replace('sentence', 'message');
console.log(newMessage); // this is the message to end all sentences
通常 JavaScript 的 String replace() 函数只会替换它在字符串中找到的第一个匹配的子符:
如果希望 JavaScript 能够替换所有子串,必须通过 /g 运算符使用正则表达式:
const myMessage = 'this is the sentence to end all sentences';
const newMessage = myMessage.replace(/sentence/g, 'message');
console.log(newMessage); // this is the message to end all messages
js不区分大小写的比较
js是一种区分大小写的语言,如果用到不需要区分大小写的时候我们就要转换一下思路了。
比如:先把要比较的字符串统一一下大小写,然后在进行比较,这样是不是就省事多了,在js中有两个这样的方法:
toUpperCase():把字符串转换为大写;
toLowerCase() :把字符串转换为小写。
用法如下:
str.toUpperCase():将字符串str中的字符都转换为大写。
str.toLowerCase():将字符串str中的字符都转换为小写。
————————————————
版权声明:本文为CSDN博主「w霆h禹y」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_40805231/article/details/100137124
处理CSDN打印不全的问题
(function(){
$("#side").remove();
$("#comment_title, #comment_list, #comment_bar, #comment_form, .announce, #ad_cen, #ad_bot").remove();
$(".nav_top_2011, #header, #navigator").remove();
$(".csdn-side-toolbar,.template-box,.reward-user-box").remove();
$(".p4course_target, .comment-box, .recommend-box, #csdn-toolbar, #tool-box,#dmp_ad_58").remove();
$("aside").remove();
$(".tool-box").remove();
$("main").css('display','content');
$("main").css('float','left');
$("#mainBox").css('width','1048px');
$("#mainBox").css('margin-left','0px');
$("#mainBox").css('margin-right','0px');
//$("[class='main_father clearfix d-flex justify-content-center']").css("width","1048px");
$(".main_father.clearfix.d-flex.justify-content-center").css("width","1048px");
window.print();
$("tool-box").remove();
})();
iuput框的清空
先给input标签加个id="input1"
当你add成功后:
如果你用的是原生js,可以这样:
document.getElementById('input1').value=''
如果用的jquery:
$('#input1').val('')
ip地址判断
var resultIp = $("#ip").val().split(".");//IP地址
var resultMask = $("#netMask").val().split(".");//子网掩码
var resultAddValue=$("#addValue").val().split(".");//输入IP地址范围
// console.log('resultIp',resultIp);
// console.log('resultMask',resultMask);
// console.log('resultAddValue',resultAddValue);
//将输入IP范围转换成整数
var resultAddValueNumber = Number(resultAddValue[0])*256*256*256 + Number(resultAddValue[1])*256*256 + Number(resultAddValue[2])*256 +Number(resultAddValue[3]);
// console.log('resultAddValueNumber',resultAddValueNumber);
var subNet = [];//ip地址与子网掩码相与的网段结果
for (var i = 0, num = resultIp.length; i < num; i++) {
var c = parseInt(resultIp[i]) & parseInt(resultMask[i]);
subNet.push(c);
}
subNet = subNet.join(".");
// console.log(subNet);
var subNetResult = subNet.split(".");
// console.log('subNetResult',subNetResult);
//限制输入范围在相与结果网段,最低位为1-255,将其转换成整数
var ipLeftNumber = Number(subNetResult[0])*256*256*256 + Number(subNetResult[1])*256*256 + Number(subNetResult[2])*256 +Number(1);
var ipRightNumber = Number(subNetResult[0])*256*256*256 + Number(subNetResult[1])*256*256 + Number(subNetResult[2])*256 +Number(255);
// console.log('ipLeftNumber',ipLeftNumber);
// console.log('ipRightNumber',ipRightNumber);
if($("#addValue").val() != ""){
//如果输入IP,判断在不在范围内
if (resultAddValueNumber < ipLeftNumber || resultAddValueNumber > ipRightNumber){
console.log('超出IP网段范围');
}else{
console.log('成功');
}
}
})
function check_ip_pool() {
var route_ip1 = "<% tcWebApi_get("Dhcpd_Common","router","s") %>";
var pool_count = "<% tcWebApi_get("Dhcpd_Common","pool_count","s") %>";
var reusltmask1 = "<% tcWebApi_get("Dhcpd_Option60","subnetMask","s") %>";
var add_ip = document.StaticDHCPv4ConfigForm.IPAddress.value;
var add_ip_vaule = add_ip.split(".")
var reusltmask = reusltmask1.split(".")
var route_ip = route_ip1.split(".")
console.log(add_ip_vaule)
//将输入IP范围转换成整数
var add_ip_vaule = Number(add_ip_vaule[0])*256*256*256 + Number(add_ip_vaule[1])*256*256 + Number(add_ip_vaule[2])*256 +Number(add_ip_vaule[3]);
console.log(add_ip_vaule)
var subNet = [];//ip地址与子网掩码相与的网段结果
for (var i = 0, num = route_ip.length; i < num; i++) {
var c = parseInt(route_ip[i]) & parseInt(reusltmask[i]);
subNet.push(c);
}
subNet = subNet.join(".");
var subNetResult = subNet.split(".");
//限制输入范围在相与结果网段,最低位为1-255,将其转换成整数
var ipLeftNumber = Number(subNetResult[0])*256*256*256 + Number(subNetResult[1])*256*256 + Number(subNetResult[2])*256 +Number(1);
var ipRightNumber = Number(subNetResult[0])*256*256*256 + Number(subNetResult[1])*256*256 + Number(subNetResult[2])*256 +Number(255);
//如果输入IP,判断在不在范围内
if (add_ip_vaule < ipLeftNumber || add_ip_vaule > ipRightNumber){
alert("this ip is not in ip_pools!")
document.getElementById('MacAddress').value = '';
document.getElementById('IPAddress').value = '';
return false;
}else{
console.log('succse');
return true;
}
}