在模态中使用时,提交按钮的值不会通过

Submit buttons' value doesn't pass when used in modal

表单中有一个按钮(如下所示)。当在常规(如果你想称其为常规)Django 模板 HTML 页面中使用时,该按钮正确地将其 submit 上的 value 传递给下面的代码。

<button type="submit" class="btn btn-primary" name="revoke" value="1" form="my-form">Revoke</button>

序列化数据将包含 revoke 及其 value

`$('#my-form').on('submit', function(event) {
        event.preventDefault();
        console.log($(this).serialize());

但是,如果表单嵌入到Bootstrap 4 提供的模式中,则序列化数据具有表单数据的其余部分,但没有revoke。如果按钮也通过 revoke 就好了。

由于 serialize() 方法创建一个字符串,参数由 & 分隔,您也可以使用 "&revoke=" + $("[name=revoke]").val() 附加按钮的值,然后这也将传递到您的后端页面。

演示代码 :

$('#my-form').on('submit', function(event) {
  event.preventDefault();
  //attch revoke as well
  var formdatas = $(this).serialize() + "&revoke=" + $("[name=revoke]").val();
  console.log(formdatas)
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form id="my-form">
  <input type="text" name="acd">
  <input type="text" name="acd1">
  <button type="submit" class="btn btn-primary" name="revoke" value="1" form="my-form">Revoke</button>
</form>