如何分配javascript变量与链接标签的id之前去链接
How to assign javascript variable with id of a link tag before going to the link
我如何劫持一个链接标签,并分配一个变量与链接标签的id之前去url?
我的HTML代码
<div id="course" class="row">
<div class="col-md-6"><a href="read.html" id="m1">Course 1</a></div>
<div class="col-md-6"><a href="read.html" id="m2">Course 2</a></div>
<div>
MY JAVASCRIPT CODE
document.getElementById("course").addEventListener("click", courseInfo);
function courseInfo(){
var selectedCourse = the id of the course selected;
//assign to localstorage
localStorage.setItem("courseid", selectedCourse);
//go to courseinfo.html
window.location.href = 'courseinfo.html';
}
我试图获得课程的Id并将其设置为本地存储,以便在加载courseinfo.html时,如果请求ajax并解析课程json格式以填充页面。
请帮
您不应该使用localStorage
,而只需通过URL参数传递信息:
在第一页,将课程代码放入href
URL,如下所示:
<div id="course" class="row">
<div class="col-md-6"><a href="courseinfo.html?courseid=1" id="m1">Course 1</a></div>
<div class="col-md-6"><a href="courseinfo.html?courseid=2" id="m2">Course 2</a></div>
<div>
不需要JavaScript。
然后在接收页面,按如下方式捕获课程id:
var courseid = location.search.match(/[&?]courseid=(.*?)(&|$)/);
if (courseid) courseid = courseid[1]; // get captured group
// this would output "1" if the URL argument was `courseid=1`
console.log(courseid);
正如@trincot建议的那样,您可以在接收端执行此操作。
但是,如果您确实需要在单击被单击的链接时捕获它的id,则需要在链接本身上添加事件处理程序,然后使用接收到的事件来处理数据,如下所示
var x;
var links = document.getElementsByTagName("A");
for(x in links) {
if (links[x] instanceof Element) {
links[x].addEventListener('click',doX, false);
}
}
function doX(e) {
alert(e.currentTarget.id);
}
请注意,在快速浏览器上,浏览器可能不会完全完成运行doX
之前页面得到刷新和上下文消失,所以这不是一个非常安全的方法来做的事情,除非你防止使用e.preventDefault
的默认操作和处理链接自己。
相关文章:
- 按钮标签,javascript 转换为链接标签
- 需要查找和替换链接标签
- 如何使html链接标签可以在没有标签的情况下工作
- 如何显示下拉 Angularjs-ui-select onclick on 超链接标签
- 如何将图像标签插入超链接标签 在 动态使用 jQuery 中
- 如何通过双击而不是单击触发链接(标签)
- 在使用 jQuery 时单击链接标签
- 如何在 css 链接标签中插入 javascript 函数
- 如何为脸书image_src添加链接标签
- 脚本/链接标签与 AJAX 加载
- 如何使用HTML或Javascript将用户输入的网站识别为链接标签
- 当我们点击链接标签javascript中的跨度时,要防止链接的行为
- 链接标签dosen'我不能在Emberjs中工作
- 在html链接标签中打开所有url,而不使用javascript转换任何其他链接
- 如何添加数据切换到链接标签,如果在li中有ul
- JointJS:使链接标签在链接本身上移动
- Jquery循环页面缩略图图像-保留主图像链接标签
- 从网页中删除CSS(动态加载,编译,不链接标签)
- 如何增加链接或链接标签之间的距离
- 尝试创建一个超链接标签在文本框中输入文本时