我在任何文章中都找不到任何解决方案,所以我在这里询问。我想制作一个按钮,将用户重定向到特定的网址。我已经这样做了:
<button onclick="location.href='create_recipe/'" type="button" >Create new Recipe</button>
但我不想通过整个链接,而是想使用{% url 'some_view' %}
,但我不知道该怎么做。有可能做到吗?
必须是<button>
、
编辑:
类似于:
<button type="button" class="btn btn-outline-secondary"><a href="{% url 'index' %}">Create new Recipe</a></button>
也不起作用
您可以将其添加到按钮中:
onclick="goToSomeView()"
然后将其添加到html文件的脚本标记中:
<script type="text/javascript">
function goToSomeView(){
document.location.href = "{% url 'some_view' %}"
}
</script>
index
是存在views.py
文件的函数。
from django.urls import path
from . import views
path('',views.index, name='index'),
HTML:
<a class="btn btn-outline-secondary" href="{% url 'index' %}">Create new Recipe</a>
正如我所看到的,您已经在使用bootstrap了,所以最简单的方法是使用带有type="button"
属性的a
元素。
<a href="{% url 'index' %}" type="button" class="btn btn-outline-secondary">Create new recipe</a>
下面您可以看到结果是相同的,但对于button
,您需要绑定onclick
函数。在这种情况下,我指向@nigel239的答案。
function goToSomeView(){
document.location.href = "{% url 'index' %}"
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.2.0/css/bootstrap.min.css" rel="stylesheet"/>
<p class="lead">Using 'a' element</p>
<a href="{% url 'index' %}" type="button" class="btn btn-outline-secondary">Create new recipe</a>
<p class="lead mt-3">Using button</p>
<button onclick="goToSomeView()" class="btn btn-outline-secondary">Create new recipe</button>