【问题标题】:How to get django form value in javascript without saving it into model如何在javascript中获取django表单值而不将其保存到模型中
【发布时间】:2014-01-09 05:49:01
【问题描述】:

我创建了一个 django 表单,我不需要将这些值保存在我的数据库中。但我不知道如何在 javascript 中访问这些表单值。

balance.html

<script>
$(document).ready(function () {
    $('.dateinput').datepicker();
    var a = document.getElementsById("{{ form.start_date }}").val;
    alert(a);
});
</script>   

<div>
    <form action="" method="POST">{% csrf_token %} Start Date: {{ form.start_date }}&nbsp;&nbsp; End Date:{{ form.end_date }}
        <br/>
        <input type="submit" name="submit" value="See Results" id="tryonce">
    </form>
</div>

但我无法得到结果。 如何在 javascript 中检索这些表单值?

【问题讨论】:

    标签: javascript jquery django django-forms


    【解决方案1】:

    {{ form.start_date }} 扩展为:

    <input id="id_start_date" type="something">
    

    在大多数现代浏览器中,您始终可以右键单击并检查元素。

    所以使用:

    var a = document.getElementsById("id_start_date").val;
    

    我建议你使用 jQuery 版本:

    var a = $("#id_start_date").val();
    

    【讨论】:

      【解决方案2】:

      如果你想直接获取值也试试这个

      var start_date="{{ form.data.start_date }}"
      

      【讨论】:

        【解决方案3】:

        表单会自动呈现为有效的 html。您可以使用前缀 id_field_name 通过其 ID 访问表单字段。所以start_date字段的id是id_start_date

        var a = document.getElementsById("id_start_date").val;
        

        你应该阅读关于表单渲染的文档here

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-12-12
          • 2019-12-05
          • 2017-06-21
          • 2011-04-27
          • 1970-01-01
          • 1970-01-01
          • 2020-04-05
          • 2011-01-08
          相关资源
          最近更新 更多