javascript - 点击后更改链接名称和href
问题描述
我有以下链接:
<span class="hds-icon-star-empty" aria-hidden="true"><!-- --></span> <a href="<?=$this->recordLink()->getActionUrl($this->driver, 'Save')?>" data-lightbox class="save-record" data-id="<?=$this->escapeHtmlAttr($this->driver->getUniqueId()) ?>"><?=$this->transEsc('Add to favorites')?></a><br/>
<br/>
现在我想在单击链接后将文本“添加到收藏夹”更改为“已添加到收藏夹”。我猜在单击链接之前,onclick-function 将无法工作,因为它会重定向到新页面。
解决方案
您可以使用停止链接的默认行为event.preventDefault()
但是您还必须使用AJAX向目标页面发送请求,以执行与数据库相关的实际功能。
document.querySelector("a").onclick = function(){
event.preventDefault();
this.innerHTML = "Already Added to Favorites";
var href = this.getAttribute("href");
//$.ajax({url : href ,...});
};
<a href = "/">Add to favorites</a>
推荐阅读
- python - 如何在python中从左到右替换文本文件中的字符?
- javascript - Sequelize 基于值的唯一约束组合
- vba - 什么是 VBA 代码概述的编译错误
- angular - 没有引导 cdn 链接,ngb-rating 不起作用
- c# - 如何使剃须刀页面仅在开发中可用?
- javascript - 如何在另一个数组中获取第三维数组的所有值
- javascript - 基于组件状态的条件模态关闭
- r - R - 更有效的 left_join
- mysql - 按用户ID和日期过滤数据 - Spring Boot
- c# - 如何在 Xaml 中完成“Windows”类型的 DependencyProperty