我在这样的网页中有很多按钮。
<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';
}
};
关于javascript - 在 javascript 中重定向到按钮 onclick 上的新页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28497796/