2

我正在使用jCarousel从文本文件中动态加载项目。但我想根据图像 id 添加一个链接到轮播,所以我使用正则表达式来计算图像文件名并从那里开始。一切正常,但是我收到以下错误:

TypeError: Cannot read property '1' of null [http://localhost:64479/TestPage_ToolTips.aspx:71]

第 70 和 71 行是:

 var testRE = url.match("t_(.*).jpg");
        return '<a href="viewprofile.aspx?id=' + testRE[1] + '"><img src="' + url + '" width="75" height="75" alt="" /></a>';

我猜错误在于testRE[1]- 但是它在加载页面时在 html 中正常工作。我只是不希望页面上出现 javascript 错误。

谢谢

4

1 回答 1

3

将您的代码更改为:

var testRE = url.match("t_(.*)\.jpg") || [undefined, ""];

你应该摆脱这个错误。注意文件名正则表达式中的转义点分隔符。

问题实际上如您所料。testRE因此null您无法访问其数组元素。这是因为您的字符串不匹配。生成的 URL 是否正确取决于您的要求。

于 2012-11-12T12:51:01.177 回答