如何通过表单按钮加载URL 替代文本链接跳转实现
方案1:HTML原生实现(无需修改JS逻辑,性能更优,适合跳转链接可由后端直接输出的场景)
直接将按钮包裹在a标签中即可实现点击跳转,修改你的.php文件代码如下:
<a target="_blank" href="此处替换为你的跳转链接"> <button type="button" id="button-1"> 自定义按钮文本 </button> </a>
方案2:JS绑定点击事件实现(适合跳转链接为前端动态获取的场景,你当前的日历场景优先用此方案)
你的跳转链接存储在前端calendarEvent.eventLinkUrl变量中,只需要给按钮绑定点击跳转逻辑,删除原来插入URL文本链接的JS代码即可:
// 绑定按钮点击跳转逻辑 jQuery("#button-1").off('click').on('click', function() { // 新窗口打开跳转,不需要新窗口就把这行替换为 window.location.href = calendarEvent.eventLinkUrl window.open(calendarEvent.eventLinkUrl, '_blank'); }); // 原来插入URL文本链接的代码可以直接删除,不需要再展示URL // jQuery( "#art-calendar-"+infoModalType+"-event-link-url" ).html('<a target="_blank" href="'+calendarEvent.eventLinkUrl+'">'+calendarEvent.eventLinkUrl+'</a>');
注意事项
- 你原有的按钮代码同时写了
type="button"和type="submit"两个重复属性,会导致浏览器识别异常,保留type="button"删除多余的type="submit"即可 - 如果按钮是动态渲染导致绑定事件失效,可以改用事件委托的写法:
jQuery(document).off('click', '#button-1').on('click', '#button-1', function() { window.open(calendarEvent.eventLinkUrl, '_blank'); });
内容的提问来源于stack exchange,提问作者Benjamin Turzanski
相关产品推荐
相关产品推荐

