前天在编写的网页时候,由于项目经常定义一些变量,一个人前后端要兼顾一起开发。项目没有使用vuejs去编写,主要其中一个原因是还不熟悉够。在业务开发过程用vuejs会遇到不顺手的问题。
突发灵感想偷懒去抽出一些表单变量。于是运用经常用到的正则 .*?,平时 经常用到这样一招可以在开发过程减轻一下劳动力。
var array = data.match(/name=\".*?\"/g);
var result ='';
for (var key in array) {
result+= array[key].replace("name=",'')+'\n';
}
//alert(result);
console.log(result);
获取一个表单的时候,能够抽离出对应name变量,这样做jq 和接收php变量的时候,就做了一下输出。
由于这个方式我们可以通过一个谷歌插件来满足我们。谷歌插件通过jq请求页面获取到html代码,再经过正则来抽离表单变量。
这样子就能获取到对应的变量了。
下面当谷歌按钮点击触发的时候,我们使用jquery的get 方式获取网页的内容。这样子能够获取完整html内容,同时解析过程。这里用了alert显示,并不能复制。我们可以尝试用复制的方式满足,或者弹窗的方式完善这个功能。编写谷歌插件能够很便利实现调试。这里只是一个小小的技巧。
正则里面的抽离规则才是好玩的东西。
var isOpen = false;
chrome.browserAction.onClicked.addListener(function(tab)
{
//chrome.tabs.executeScript(tab.id, {file:'js/cssviewer.js'});
//chrome.tabs.insertCSS(null, {file:'css/debug.css'});
var test = window.document.getElementsByTagName('html')[0].innerHTML;
// alert(tab.url);
$.get(tab.url,null,function(data){
if(data)
{
var array = data.match(/name=\".*?\"/g);
var result ='';
for (var key in array) {
result+= array[key].replace("name=",'')+'\n';
}
alert(result);
//console.log(result);
// window.clipboardData.setData('Text', result);
}
})
});