需要帮助javascript中的数组和链接

时间:2010-11-30 19:14:51

标签: javascript html hyperlink

您好我有关于html和javascript的问题。

假设我点击html网站上的链接说

<tr>
<td><a href="www.hello1.com">www.hello1.com</a></td>
</tr>

然后我还想查看该网站上是否有任何其他相关链接,名称较窄,例如

<tr>
<td><a href="www.hello2.com">www.hello2.com</a></td>
</tr>

所以我想要做的是构建一个每次点击链接的javascript方法 你运行这个方法,检查已经按下了什么链接,然后在整个html网站上搜索一个类似的链接(这里很简单,网站只包含一个包含链接的表,所以搜索不会那么多槽)。

这是怎么做到的?

我只需要方法,每次按下链接时我都知道如何运行该方法:)

提前致谢:)

编辑 与“相似”我的意思是这样的

'\\b'+theUrlToGoTo+'\\b'

换句话说,唯一会改变的是名称之后的数字,例如

hello1和hello2

编辑2

感谢nemophrost我现在知道如何做第一个。我现在有第二个问题,在我完成之前,那就是用javascript生成HTML代码。 现在说我运行包含

的everyClickFunc()函数后我有一个数组
var myArray = [ 'www.hello1.com', 'www.hello2.com', 'www.hello3.com'];

我现在想生成一个像这样的简单html页面

<html>
<head>
</head>
<body>
<table>
<tr>
<td><a href="www.hello1.com">www.hello1.com</a></td>
</tr>
<tr>
<td><a href="www.hello2.com">www.hello2.com</a></td>
</tr>
<tr>
<td><a href="www.hello3.com">www.hello3.com</a></td>
</tr>

</table>
</html>

每次点击链接时都会覆盖此文件。因此,链接将根据我在原始网站上点击的链接而不同。

换句话说,我想要这样的东西

<html>
<head>
</head>
<body>
<table>
<tr>
<td><a href="www.testing1.com">www.testing1.com</a></td>
</tr>
<tr>
<td><a href="www.hello1.com">www.hello1.com</a></td>
</tr>
<tr>
<td><a href="www.testing2.com">www.testing2.com</a></td>
</tr>
<tr>
<td><a href="www.hello2.com">www.hello2.com</a></td>
</tr>
<tr>
<td><a href="www.hello3.com">www.hello3.com</a></td>
</tr>
<tr>
<td><a href="www.difrent1.com">www.diffrent1.com</a></td>
</tr>
<tr>
<td><a href="www.difrent2.com">www.diffrent2.com</a></td>
</tr>
</table>
</html>

如果您点击上述任何“hello”链接,请生成包含以下信息的新html网站

<html>
<head>
</head>
<body>
<table>
<tr>
<td><a href="www.hello1.com">www.hello1.com</a></td>
</tr>
<tr>
<td><a href="www.hello2.com">www.hello2.com</a></td>
</tr>
<tr>
<td><a href="www.hello3.com">www.hello3.com</a></td>
</tr>

</table>
</html>

这最简单的解决方法是什么?

再次非常感谢你:)

1 个答案:

答案 0 :(得分:0)

使用jQuery,您可以执行以下操作:

function everyClickFunc(urlToMatch) { // pass in something like 'www.hello1.com'
    var baseURLMatch = urlToMatch.match(/^www\.(.+\D)\d*\.com$/);

    if (baseURLMatch && baseURLMatch.length > 1) {
        var matchExp = new RegExp('^www\\.' + baseURLMatch[1] + '\\d*\\.com$');

        $('a').each(function() {
            if ($(this).attr('href').match(matchExp)) {
                doSomethingBecauseYouGotAMatch(); // Call your successful match function
            }
        });
    }
}