Javascript 如何根据所选文本获取href的属性?
我有一个这样的链接Javascript 如何根据所选文本获取href的属性?,javascript,php,jquery,regex,preg-match,Javascript,Php,Jquery,Regex,Preg Match,我有一个这样的链接 <a href="site.com/register.php?mid=username&mode=bn&bid=1"> 在一页中。并且需要在javascript中执行。http也在那里 如何做到这一点 谢谢。试试这个: 放置锚标签的id <a id="anchor1" href="site.com/register.php?mid=username&mode=bn&bid=1"> var Links=document
<a href="site.com/register.php?mid=username&mode=bn&bid=1">
在一页中。并且需要在javascript中执行。http也在那里
如何做到这一点
谢谢。试试这个:
放置锚标签的id
<a id="anchor1" href="site.com/register.php?mid=username&mode=bn&bid=1">
var Links=document.getElementsByTagName('a');
var值={};
对于(var i=0;i
JS还是PHP?哪一个?无论哪种情况,只需使用内置的HTML解析器/DOM。链接不正确,除非你真的想相对链接到http://www.example.com/site.com/register.php?mid=username&mode=bn&bid=1
从http://www.example.com/
。我使用了getAttribute,但找不到匹配site.com/register.phptry this[^“]+(?=\?)
或是的,这是我稍后要做的事情,但首先我需要在页面中的多个链接中找到site.com/register.php。尝试此编辑回答控制台中出现空值…我使用了相同的代码…但它不起作用。href中没有值。我只使用var href=document.getElementById(“anchor1”).href;警报(href);和控制台响应未捕获类型错误:无法读取null的属性'href'。我为锚定标记提供了相同的id。我在for循环中错过了结束括号,现已更正。这是演示链接,我认为var href=document.getElementById(“anchor1”)。href;警报(href);不再使用,因为我的编辑器dreamweaver不支持它,也没有显示此警报。
<a id="anchor1" href="site.com/register.php?mid=username&mode=bn&bid=1">
<script>
var href = document.getElementById('anchor1').href;
//get index of ?
var indexStart = href.indexOf('?');
var indexLast = href.length;
//get href from ? upto total length
var params = href.substring(indexStart+1, indexLast);
//get tokens with seperator as '&' and iterate it
var paramsArray = params.split("&");
for(var i=0;i<paramsArray.length;i++)
{
//get key and value pair
var paramKeyValue = paramsArray[i];
var keyValue = paramKeyValue.split('=');
alert("Key="+keyValue[0]+" and value="+keyValue[1]);
}
</script>
var Links = document.getElementsByTagName('a');
var Values = {};
for(var i = 0; i < Links.length; i++) {
if(Links[i].href.toString().indexOf('site.com/register.php') != -1) {
var Str = Links[i].href.toString();
var Arr = Str.split('?');
Arr[1] = Arr[1] || '';
var Params = Arr[1].split('&');
for(var i = 0; i < Params.length; i++) {
var Value = Params[i].split('=');
Values[Value[0]] = Value[1] || null;
}
break;
}
}
console.log(Values);