我正在使用HTML,其中包含如下所示的javascript链接:
<a href="javascript:openExternalLink(5542, true, 'http://www.websitedomain.com')">Links Text Here</a>
我需要用标准锚标签替换它们,如下所示:
<a href="http://www.websitedomain.com">Links Text Here</a>
在Jython中实现这一目标的最佳解决方案是什么?
由于
EEF
答案 0 :(得分:2)
最好的方法可能是使用正则表达式。
答案 1 :(得分:1)
var i= 0, A= document.links, who, url;
while(A[i]){
who= A[i++];
url= who.href || '';
if(url.indexOf('javascript:openExternalLink')== 0){
who.href= url.substring(url.indexOf("'"), url.lastIndexOf("'")+1);
}
}
答案 2 :(得分:0)
我的解决方案是使用jQuery库(只是为了易于使用,您可以通过循环遍历锚来简单地在纯Javascript中执行代码,因为其余代码是纯Javascript)。
在这里,它循环遍历锚点并将属性href
设置为DOM中的真实属性
$(document).ready(function ()
{
$("a").each(function ()
{
var href = $(this).attr('href');
var urlStart = href.indexOf('http://'); //start point of the substring cut
var urlStop = href.lastIndexOf("'"); //end point of the substring cut
var realUrl = href.substring(urlStart, urlStop); //this is the real URL
$(this).attr( {'href': realUrl} ); //now replace and we're ready to go
});
});
我自己测试了这个方法,它按预期工作。享受!
答案 3 :(得分:0)
这样的事可能有用:
newhtml = oldhtml.replace(/href=".*?'(http:.*?)'.*?"/gi, 'href="$1"');