javascript替换为正则表达式无法正常工作

时间:2013-08-08 14:23:54

标签: php javascript regex replace

我有一个用PHP生成的面包屑系统,并设置为使面包屑的最后一项不是链接。我正在使用第三方PHP类来创建它。在没有深入深入的情况下,这很好,除非在一种情况下我想从get查询中获取值并将值附加到痕迹上。对于第三方PHP类,最后一项是PHP类生成的最后一项,因此它没有我需要的链接。

因此,我想抓住使用javascript从PHP类生成的最后一项,并将其作为链接,然后使用javascript将GET查询中的值附加到没有链接的面包屑中。

基本上,面包屑在最后阶段应该是这样的:

<h4><link>Client</link> / <link>Year</link> / <link>Project</link> / Asset</h4>

所以我需要抓住“Project”并将其作为链接,然后附加资产名称(从PHP GET获取值)。

我正在尝试使用Javascript的替换功能来完成此任务。

我的代码现在:

        var title = "<?php echo $_GET['asset'];?>";//Get PHP variable
        var value = document.getElementById("bread-crumbs").innerHTML; //<h4 id="bread-crumbs">Content</h4>

        var stripVal = value.replace(/(<([^>]+)>)/ig,"");//Remove html link tags from it

        var n = stripVal.lastIndexOf('/');//grab the item after the last / (ProjectName)
        var searchfor = stripVal.substring(n + 1); //Project folder name

        //alert(stripVal);
        var re = new RegExp(searchfor,"g"); //Create a regex that holds the last item value         

        //Replace the value with the itself, except wrapped in an href  
        value = value.replace(re, "<a href='index.php'>"+searchfor+"</a>");

        //Append the title to the end of the breadcrumb         
        var newValue = value.concat('<span class="dir-slash"> / </span> ' + title);

        //Replace the HTML with the updated markup
        document.getElementById("bread-crumbs").innerHTML = newValue;

不幸的是,这似乎根本不起作用。我有什么突出的东西搞砸了吗?对不起啰嗦的帖子很抱歉。我有时不太擅长解释编程。

谢谢!

0 个答案:

没有答案