如何使用Javascript更改href和html文本

How to use Javascript to change href and html text?

本文关键字:html 文本 href 更改 何使用 Javascript      更新时间:2023-09-26

所以我有一小段HTML,我不能访问它,我需要将它链接的URL更改到其他地方。

现在我环顾四周,尝试了不同的方法,但似乎不起作用,所以我一定做错了什么。

Html代码:

<div class="manageable-content" data-container="edit_register_ind_container">
    <a class="entry-text-link secondary-step step-button" id="register_ind_container" href="oldurl">Register</a>
 </div>

首先,我想尝试一些看起来更容易的方法,将显示的文本"注册"更改为"启动筹款人"

这就是我得到的部分:

// url manipulation
    $(document).ready(function(){
     $("#register_ind_container").click(function(){
           $("#manageable-content a").text('Start a Fundraiser');
              });
     $("#register_ind_container").attr("href", "http://google.ca");
    });

到目前为止没有任何运气。

一点背景信息:我正在使用一个名为Luminate/Blacbaud的平台,它是一个设置奇怪的CMS。header标记和类似的东西放在与html正文不同的地方,css也在其他地方(但我只是使用ftp在头中引用它)。

我是如何引用javascript代码的。

<script type="text/javascript" src="../mResonsive/js/urlmanipulation.js"></script>

我的css工作,所以我确信它应该工作,但我不知道为什么它不工作。欢迎所有建议(除了要求html访问,因为我有,3周前哈哈)

感谢您抽出时间!

我看到了你的两个代码:

 $("#register_ind_container").attr("href", "http://google.ca");

此行将在页面加载时执行,因此加载时应更改href

$("#register_ind_container").click(function(){

但是当你点击Id时它不会工作,因为在这种情况下,这个id与超链接关联

因此具有默认子集规则的超链接

要覆盖此项,您可以尝试

$("#register_ind_container").click(function(e){
    // custom handling here
    e.preventDefault();
 $(this).text('Start a Fundraiser');
});

但这也不是一个好的做法。希望这能有所帮助!

$(document).ready(function(){
     $("#register_ind_container").click(function(){
           $(this).text('Start a Fundraiser');
           $(this).attr("href", "http://google.ca");
     });
});

您正在更改点击事件之外的URL。。将其包裹在单击事件中。。还可以使用$(this)

// url manipulation
$(document).ready(function(){
  $("#register_ind_container").click(function(){
   $(this).text('Start a Fundraiser').attr("href", "http://google.ca");                            
  });
});