Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ajax Django根据model choice字段中的值数量动态添加要形成的字段_Ajax_Django_Django Forms_Formsets - Fatal编程技术网

Ajax Django根据model choice字段中的值数量动态添加要形成的字段

Ajax Django根据model choice字段中的值数量动态添加要形成的字段,ajax,django,django-forms,formsets,Ajax,Django,Django Forms,Formsets,目标: 在Django表单的modelchoice字段中,我使小部件显示多个复选框。但对于每个复选框,我希望只显示一个文本框,然后提交。我需要知道如果复选框没有被选中,它的id仍然和可能的文本框值。如果是Ajax,我该如何实现这一点。请详细说明。因为我是django的新手,对ajax没有太多的了解。所以您必须在这里找到可能的方法 更简单(但方法非常缓慢): 在用户输入复选框后提交表单,在views.py中处理输入,并相应地在不同的模板上提供表单的其他部分。这将导致您重新加载页面并更改同一表单的U

目标:
在Django表单的modelchoice字段中,我使小部件显示多个复选框。但对于每个复选框,我希望只显示一个文本框,然后提交。我需要知道如果复选框没有被选中,它的id仍然和可能的文本框值。如果是Ajax,我该如何实现这一点。请详细说明。因为我是django的新手,对ajax没有太多的了解。

所以您必须在这里找到可能的方法

  • 更简单(但方法非常缓慢): 在用户输入复选框后提交表单,在
    views.py
    中处理输入,并相应地在不同的模板上提供表单的其他部分。这将导致您重新加载页面并更改同一表单的URL。如果您一开始只是为了学习Django,那么这种方法很好
  • 更好的方法。您可以使用页面上的JavaScript/JQuery来确定复选框是否勾选,并相应地显示复选框。你可以这样做

    if(document.getElementById('yourCheckBoxID').checked) 
    {
    $("#FormFieldID").show();
    } 
    else 
    {
    $("#FormFieldID").hide();
    }
    
  • 如果要执行后一种操作,请记住不要将输入字段设置为“必需”,因为在不显示文本字段时可能会出现错误。如果有必要,可以使用某种JS表单验证


    希望这有帮助

    你能给我们更多关于这个型号的信息吗?Django可以从模型中自动创建窗口小部件,但如果只有一个或多个字段,则不清楚您打算如何创建窗口小部件。该模型是一个M2M直通模型。。。基本上是一个学校应用程序…而我的问题模型是那些注册了某个特定课程的学生。出勤登记我要做的是首先让所有学生注册该课程。这是模型中的FK。然后,我需要分别显示它们,以选中/选择它们作为“在场”,而那些不在场的人,我需要选择性地给出评论(文本框)。这是一个挑战,我如何让文本框为每个学生显示,并在他们不在场的情况下获取相应的学生ID。谢谢,伙计…这件事让我头疼…如果我通过了,会更新你。。。