【问题标题】:change part of a link with javascript in a specific div only仅在特定 div 中使用 javascript 更改部分链接
【发布时间】:2014-01-25 22:06:21
【问题描述】:

您好,我需要编辑页面上的一些链接。使用以下代码有效,但会导致页面上出现其他问题。我需要代码只影响具有特定输入 ID 的元素。我也不能只替换链接,因为查询将动态添加到每个链接的末尾。所以总而言之,我只需要用输入ID“btnViewDetails”替换所有链接的一部分。任何帮助都会很棒,我很困惑。干杯

<script language="javascript">

    document.body.innerHTML = document.body.innerHTML.replace(/JobSeekers/g,'mobile');
    document.body.innerHTML = document.body.innerHTML.replace(/JobPositionDetail.aspx/g,'JobPositionDetail_Mobile.aspx');

</script>

【问题讨论】:

    标签: javascript replace innerhtml


    【解决方案1】:

    var someVariable = document.getElementsByClassName('btnViewDetails');

    (如果不是唯一值,则应使用类而不是 ID)。

    someVariable 现在是一个数组,其中包含类名为 btnViewDetails 的所有元素。

    现在仅在元素的 href 值上替换要替换的文本(您必须循环遍历它们):

    for (i = 0; i < someVariable.length; i++) {
      someVariable[i].href // do your replaces here
    }
    

    【讨论】:

    • 非常感谢您的快速回复,我尝试了以下方法,但它不起作用。我还需要参考 .innerHTML 等吗?干杯&lt;script type="text/javascript"&gt; var someVariable = document.getElementsByClassName('btnViewDetails'); for (i = 0; i &lt; someVariable.length; i++) { someVariable[i].href.replace(/JobSeekers/g,'mobile'); someVariable[i].href.replace(/JobPositionDetail.aspx/g,'JobPositionDetail_Mobile.aspx'); } &lt;/script&gt;
    • 我也尝试过以下方法,它非常接近,但只更改文本而不链接任何进一步的建议会很棒。谢谢&lt;script type="text/javascript"&gt; $('#btnViewDetails').each( function() { $(this).html($(this).html().replace(/JobSeekers/g,'mobile')); }); &lt;/script&gt;
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-11-07
    • 1970-01-01
    • 2015-09-08
    • 2020-10-12
    • 1970-01-01
    • 1970-01-01
    • 2011-05-01
    相关资源
    最近更新 更多