python - 如何在 python 中获取通过 AJAX 发布的值数组?

标签 python ajax django jquery

我将复选框的值存储在数组中并通过 AJAX 发送。在 console.log(searchIDs) 中,我获得了所选复选框的正确 o/p,但是 views.py 中的 print searchIDs 仅打印最后一个索引值,即如果我选择一和二,它只会打印二。我哪里出错了?

这是我的代码:

<script>
  $(function() {

    $( "#dialog-form" ).dialog({
      autoOpen: false,
      height: 300,
      width: 350,
      modal: true,
      buttons: {
        "Add": function() {

            var searchIDs = [];
            $("#dialog-form input:checkbox:checked").map(function(){
                searchIDs.push($(this).val());
            });

            $.ajax({
            type: "POST",
            url: "/dashboard/",
            data : { 'searchIDs' : searchIDs },
            success: function(result){
                console.log(searchIDs);
                $("#widgets").html(result);
                }
            });

            $( this ).dialog( "close" );

        },

    Cancel: function() {
          $( this ).dialog( "close" );
        }
      },

    });

    $( "#add_widget" ).click(function() {
        $( "#dialog-form" ).dialog( "open" );
      });
  });
  </script>

<body>

<div id="dialog-form" title="Create new user">
    <input type="checkbox" value="One">One</input><br>
    <input type="checkbox" value="Two">Two</input><br>
    <input type="checkbox" value="Three">Three</input><br>
    <input type="checkbox" value="Four">Four</input><br>
</div>

<div id="widgets" class="ui-widget"></div>
<button id="add_widget">Add Widget</button>


</body>

View.py

if request.is_ajax():
        searchIDs = request.POST['searchIDs[]']
        print searchIDs

最佳答案

django提供了辅助函数getlist帮助您获取参数的 id 列表

request.POST.getlist('searchIDs[]')

关于python - 如何在 python 中获取通过 AJAX 发布的值数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18637963/

相关文章:

jquery - AJAX 调用似乎从未发生过

mysql - 使用遗留数据库在 Django 项目中使用复合主键

python - Django 1.5 终于不安全了?

javascript - 缓存 AJAX 请求

python - SQLAlchemy 子查询获取 AttributeError : 'Query' object has no attribute 'is_clause_element'

jquery - 带 Chrome 的滞后滚动

python - 没有网络进程运行错误 - 在 Heroku 上部署 Django

django - related_name的作用是什么?

Python:在静态上下文中嵌套一行for循环时出错

python - 带有 :not does not behave as expected 的 CSS 选择器