【问题标题】:django template reverse url,how to pass a jquery variabledjango模板反向url,如何传递jquery变量
【发布时间】:2015-05-14 02:18:41
【问题描述】:

url.py

url(r'^admin/index/$', 'forum.admin.index',name='admin_index'),

模板:

<li class="link" value="admin_index">link</li>
<div id="main"></div>
.......
<script type="text/javascript">
$(document).ready(function () {
    $(".link").click(function () {
        var link_value= $(this).attr("value");
        var addr = {% url link_value %}    {# here is the error #}
        $("#main").load(addr,function(){
            $("#main").fadeIn(100);
        })
})

错误:从 django 1.5 开始,url 视图名称应该有引号。

如何将 jquery 变量传递给 django 模板 url 反向

【问题讨论】:

    标签: jquery django url


    【解决方案1】:

    你做不到。但是你可以设置&lt;li&gt;的值,直接在click()函数中使用:

    <li class="link" value="{% url 'admin_index' %}">link</li>
    <div id="main"></div>
    .......
    <script type="text/javascript">
    $(document).ready(function () {
        $(".link").click(function () {
            var addr = $(this).attr("value");
            $("#main").load(addr,function(){
                $("#main").fadeIn(100);
            })
    })
    

    【讨论】:

    • 但实际的 url 是 'admin/index' ,我想用 {%url ...%} 反转实际的 url。作为您的代码,我必须为每个链接添加一个点击功能
    • 或者我用实际的 url 添加
  • 你没有任何其他理智的选择。您不能使用来自 JS 的模板标签/过滤器。
  • 【解决方案2】:

    我太傻了!

    <li class="link" value="{%url 'admin_index' %}">link</li>
    
    $(document).ready(function () {
        $(".link").click(function () {
            $("#main").load($(this).attr("value"),function(){
                $("#main").fadeIn(100);
            })
    })
    

    【讨论】:

      猜你喜欢
      相关资源
      最近更新 更多
      热门标签