【问题标题】:Dynamic content on page is not showing页面上的动态内容未显示
【发布时间】:2020-01-14 22:35:42
【问题描述】:

我正在尝试使用 js 的 onclick 事件在页面上生成动态内容,但控制台出现错误“Uncaught SyntaxError: Unexpected identifier”

html

{% load static %}
<head>
      <script type="text/javascript">
      function myFunction() {
        // document.getElementById("demo").innerHTML = "Paragraph changed.";
        document.getElementById("demo").innerHTML = "{{ Malegender }}";
      }
      </script>
  </head>

  <body>
    <div class="container mt-5">
<h1>Gender</h1>
      <hr>
      <h5>{{ mygender.as_p }}</h5>
      <h1 id="demo">Hello</h1>
      <div class="container">
        <button type="submit" name="gender_submit" class="btn btn-success" onclick="myFunction()">Confirm</button>
      </div>
    </div>
  </body>

views.py

def Gender(request):
    gender_selection = GenderForm()
    male_detail = MaleForm()
    Male = False
    print("Value of male",Male)
    if 'gender_submit' in request.POST:
        male_detail = MaleForm(data=request.POST)
        Male = True
        print("Value of male d",Male)

    print("Value of male a",Male)
    return render(request, 'Gender.html',{"mygender":gender_selection,"Malegender":male_detail})

forms.py

class MaleForm(forms.ModelForm):
    class Meta:
        model = GenderModel
        fields = ('genderMale','genderMale1','genderMale2','genderMale3','genderMale4')

models.py

from django.db import models
from django.contrib.auth.models import User
from django.db.models.signals import post_save
from django.dispatch import receiver
# Create your models here.

class GenderModel(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)

    gender_choice=(('Male','Male'),('Female','Female'),)
    gender = models.CharField(max_length=6,choices=gender_choice,null=True,)
    genderMale = models.BooleanField(default=False)
    genderMale1 = models.BooleanField(default=False)
    genderMale2 = models.BooleanField(default=False)
    genderMale3 = models.BooleanField(default=False)
    genderMale4 = models.BooleanField(default=False)
@receiver(post_save, sender=User)
def create_user_profile(sender, instance, created, **kwargs):
    if created:
        GenderModel.objects.create(user=instance)

@receiver(post_save, sender=User)
def save_user_profile(sender, instance, **kwargs):
    instance.gendermodel.save()

当我单击按钮时,控制台上会显示错误。当用户单击按钮时,我正在尝试显示该内容

【问题讨论】:

  • 是你的python控制台出错了,还是你的浏览器出错了?另外,你能用回溯发布完整的错误吗?
  • 错误出现在浏览器的控制台中
  • (index):43 Uncaught ReferenceError: myFunction is not defined at HTMLButtonElement.onclick
  • 根据控制台

标签: javascript django django-templates


【解决方案1】:

this 问题建议从不 使用onclick 属性。相反,您可以尝试使用这样的事件侦听器:

<button type="submit" name="gender_submit" class="btn btn-success"
id="gender_submit_button">Confirm</button>

<script type="text/javascript">
function myFunction() {
  document.getElementById("demo").innerHTML = "{{ Malegender }}";
}

document.getElementById('gender_submit_button').addEventListener('click', myFunction);
</script>

另外,请确保将您的脚本放置在按钮和演示之后。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-21
    • 2021-09-06
    • 1970-01-01
    • 2023-04-10
    相关资源
    最近更新 更多