【发布时间】:2021-05-17 02:58:16
【问题描述】:
我在 html5 中使用 django(版本 3.1.6),当我想在“a”标签中执行任何链接并从“按钮”标签中的“脚本”执行函数时,单击链接文本不会发生任何事情。但如果我从按钮标签中的 onclick 属性中删除函数执行部分,则链接异常正常。这是我在 home.html(模板)中的代码:
<html>
<body>
<table>
<tr>
<td>
<button class="rounded" type="button" id="btn1" onclick='my_function(`{{ object_from_classbasedview }}`)'>
<a href="some url here">
Click me!
</a>
</button>
</td>
</tr>
</table>
<text id='txt1'></text>
</body>
<script>
function my_function(param1){
event.PreventDefault();
document.getElementById('txt1').innerHtml=param1;
}
</script>
</html>
我尝试了许多解决方案,但都没有奏效。任何想法或解决方案表示赞赏????提前致谢。
【问题讨论】:
-
在按钮内部有一个链接在语义上很奇怪,并且不清楚你在这里想要实现什么。为什么不只是有一个链接或一个按钮(样式看起来像你想要的任何东西)来执行这两个操作?总体目标是什么?
-
一个
<button>不能包含任何交互内容,例如<a>。 -
@David 谢谢你指导大卫,你的权利,它应该是按钮或 a,但我需要两者,因为我无法从“a”标签执行功能,或与“按钮”建立链接(根据我所学到的)但是它可能有一些技巧!但总体目标是:我想在网页中重定向用户,然后从数据库中获取一些信息并将其呈现在此网页上,所有内容都通过单击此按钮。
-
@alishokrollahi: “因为我不能从 'a' 标签执行函数” - 是的,你可以,通过在 JavaScript 中处理它的
click事件。 "或使用 'button' 建立链接" - 可以,但在按钮的click处理程序中使用 JavaScript 重定向用户。 “我想在网页中重定向用户,然后从数据库中获取一些信息并将其呈现在此网页上” - 那么你想要的只是一个链接。只需链接到您希望用户访问的页面。您似乎完全涉及一个按钮,这过于复杂了。
标签: javascript html dom django-templates jinja2