重定向至javascript中单击按钮的新页面
Redirect to new page on button onclick in javascript
我在网页里有很多这样的按钮。
<div class="btn btn-sm btn-success mycustom_btn" onClick="javascript:clickinner();">more</div>
<div class="btn btn-sm btn-success mycustom_btn1" onClick="javascript:clickinner();">more</div>
<div class="btn btn-sm btn-success mycustom_btn2" onClick="javascript:clickinner();">more</div>
我想做的是在按钮onclick事件上调用函数clickinner()。我试图通过类名获取按钮元素并更改目标url。javascript代码如下。
<script>
function clickinner(){
var mybtn=document.getElementsByClassName('btn');
mybtn.onClick="location.href='about-us.html'";
};
</script>
我不想按Id获取元素,这样每次都必须分配唯一的Id。然而,每当我点击任何按钮时,目标链接都不起作用。请帮帮我。
点击的按钮可以使用clickinner
函数中的this
访问,无需通过类名获取:
<div class="btn btn-sm btn-success mycustom_btn" onClick="javascript:clickinner(this);">more</div>
<div class="btn btn-sm btn-success mycustom_btn1" onClick="javascript:clickinner(this);">more</div>
<div class="btn btn-sm btn-success mycustom_btn2" onClick="javascript:clickinner(this);">more</div>
此外,您可以直接重定向到"关于我们"页面,因为您已经处于点击事件中。所以
<script>
function clickinner(target) { // Target refers to the clicked element
location.href='about-us.html';
};
</script>
足够了。
如果你需要根据按钮的类别转到不同的页面,你可以这样做:
function clickinner(target) {
if(target.classList.contains('mycustom_btn')) {
location.href = 'another-page.html';
} else {
location.href='about-us.html';
}
};
将this
作为参数添加到函数中,并正确更改的位置
<div class="btn btn-sm btn-success mycustom_btn" onClick="javascript:clickinner(this);">more</div>
<div class="btn btn-sm btn-success mycustom_btn1" onClick="javascript:clickinner(this);">more</div>
<div class="btn btn-sm btn-success mycustom_btn2" onClick="javascript:clickinner(this);">more</div>
<script>
function clickinner(mybtn){
// Do your stuff here with the clicked button
location.href='about-us.html';
};
</script>
http://jsfiddle.net/asv548g2/
工作小提琴解决方案
HTML:
<div id="button">more</div>
<div class="btn btn-sm btn-success mycustom_btn">more</div>
<div class="btn btn-sm btn-success mycustom_btn">more</div>
<div class="btn btn-sm btn-success mycustom_btn">more</div>
JS:
var button = document.getElementById('button');
button.addEventListener('click', function(){
alert('only 1 button clicked');
window.location = 'about-us.html';
});
var buttons = document.querySelectorAll('.btn');
for(var i = 0; i < buttons.length; i++){
buttons[i].addEventListener('click', function(){
alert('each button clicked');
window.location = 'about-us.html';
});
}
尝试此示例
<html>
<head>
<meta charset="UTF-8">
<title>First Page</title>
<script>
function clickinner() {
window.location.href = 'secondPage.html';
}
</script>
</head>
<body>
<div class="btn btn-sm btn-success mycustom_btn"
onClick="javascript:clickinner()">more</div>
<div class="btn btn-sm btn-success mycustom_btn1"
onClick="javascript:clickinner();">more</div>
<div class="btn btn-sm btn-success mycustom_btn2"
onClick="javascript:clickinner();">more</div>
</body>
</html>
相关文章:
- 在检查单选按钮的值是否正确后,如何将其带到新页面
- 在IE11中,点击next或back按钮,使用intro.js打开一个新页面
- 重定向至javascript中单击按钮的新页面
- 为什么我的 HTML 按钮刷新页面?/为什么我不能让我的新 HTML DOM 元素插入到我的页面中
- 当用户在加载到新页面之前多次单击“提交”按钮时,防止多次提交
- Javascript:根据单选按钮选择重定向到新页面
- 滚动到顶部按钮并打开新页面
- 如何获得链接到新页面的按钮,并预先填充搜索栏
- 单击按钮并根据复选框b中的设置值输出消息和打开新页面
- 当我点击链接按钮xyz打开一个新窗口时,ASP.Net链接按钮打开页面x.ASP
- 单击相同的按钮刷新当前页面并导航到新页面
- 我们可以用提交按钮将页面重定向到新窗口吗
- 如何使用javascript提交表单,而无需按钮触发新页面
- 点击离子导航条上的按钮移动到新页面的所有3种方式都不起作用
- 点击按钮后加载新页面(不重复)
- 在php中按下一个按钮打开一个新页面
- 当客户端通过点击后退按钮进入页面时,如何使其加载新副本而不是缓存的副本
- 如何在加载新页面时启用jquery标签/单选按钮
- 按两次HTML表单按钮打开新页面
- 传递单选按钮以重定向到新页面