首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么javascript不能检测到在django for循环之后添加的元素?

JavaScript不能检测到在Django for循环之后添加的元素的原因是因为Django是一个服务器端框架,它在服务器端生成HTML页面并将其发送到客户端浏览器进行渲染。而JavaScript是在客户端浏览器中执行的,它只能操作已经加载并存在于浏览器中的HTML元素。

在Django的for循环中,服务器端会根据给定的数据生成相应的HTML代码,并将其发送到浏览器。一旦HTML页面加载完成并在浏览器中渲染,JavaScript就可以操作这些已经存在的HTML元素。

如果在for循环之后添加新的元素,这些元素并不会被服务器端生成的HTML代码包含在内,因此JavaScript无法直接检测到它们的存在。如果希望JavaScript能够操作这些新添加的元素,可以考虑使用AJAX技术来向服务器发送请求,获取新的数据并动态更新页面。

总结起来,JavaScript不能检测到在Django for循环之后添加的元素是因为它只能操作已经加载并存在于浏览器中的HTML元素,而无法直接感知服务器端生成的新元素。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

09.Django基础七之Ajax

(这一特点给用户感受是不知不觉中完成请求和响应过程)     AJAX 不需要任何浏览器插件,但需要用户允许JavaScript浏览器上执行。       ...同样也不难解释,为什么ajax请求时,需要从cookie中拿取token添加到请求头中。...python中datetime等时间日期类型是不能进行json序列化,因为json没有对应格式,上面的这几种数据类型虽然进行json.dumps序列化之后都是个字符串,但是也是有格式...JSON 格式有两个显著优点:书写简单,一目了然;符合 JavaScript 原生语法,可以由解释引擎直接处理,不用另外添加解析代码。...简单请求:一次请求 非简单请求:两次请求,发送数据之前会先发一次请求用于做“预”,只有“预”通过后才再发送一次请求用于数据传输。

3.6K20

使用Django实现把两个模型类数据聚合在一起

models.Model): # 写一个方法,定义管理页面上能够显示外键字段字段 # grade为Students模型表,level为Grades模型表,那么为Level模型字段...= '年级' # 定义该字段管理后台显示名称 dis_level.short_description = '年级' # 方法列是不能排序,如果需要排序需要为方法指定排序依据。...添加是'模型类字段' # 如果是外键需要遵循这样语法:本表外键字段__(双下划线)外表字段或外外键字段__最终外键表要显示字段。...使用DjangoTabularInline,可以解决这个问题,父表里对子表进行编辑: 所有代码都在admin.py里写,具体如下: # 一对多关联表编辑,让父表管理配置页面能同时编辑子表,以下Score...inlines = [ScoreInline, ] 做完之后,效果如下: ? 以上这篇使用Django实现把两个模型类数据聚合在一起就是小编分享给大家全部内容了,希望能给大家一个参考。

1.4K20
  • 深入理解跨域问题

    不能读写对方资源。...对于开发者来说,CORS通信与同源AJAX通信没有差别,代码完全一样。浏览器一旦发现AJAX请求跨源,就会自动添加一些附加头信息,有时还会多出一次附加请求,但用户不会有感觉。...服务器确认允许之后,才发起实际 HTTP 请求。请求返回中,服务器端也可以通知客户端,是否需要携带身份凭证(包括 Cookies 和 HTTP认证 相关数据)。...CORS 请求失败会产生错误,但是为了安全, JavaScript 代码层面是无法获知到底具体是哪里出了问题。你只能查看浏览器控制台以得知具体是哪里出现了错误。...Access-Control-Max-Age 指定预缓存时间,多久之后再次预缓存时间内不在发起预,单位秒。

    1.1K30

    跨域和CORS

    现在所有支持JavaScript 浏览器都会使用这个策略。所谓同源是指,域名,协议,端口相同。...目前,所有浏览器都支持该功能,IE浏览器不能低于IE10。   整个CORS通信过程,都是浏览器自动完成,不需要用户参与。对于开发者来说,CORS通信与同源AJAX通信没有差别,代码完全一样。...浏览器一旦发现AJAX请求跨源,就会自动添加一些附加头信息,有时还会多出一次附加请求,但用户不会有感觉。   因此,实现CORS通信关键是服务器。...简单请求:一次请求 非简单请求:两次请求,发送数据之前会先发一次请求用于做“预”,只有“预”通过后才再发送一次请求用于数据传输。...这个content-type意思是,什么样请求体类型数据都可以,我们前面说了content-type等于application/json时,是复杂请求,复杂请求先进行预,预响应中我们加上这个,

    1.1K10

    JSONP、CORS解决跨域问题

    一、为什么会有跨域问题? 是因为浏览器同源策略是对ajax请求进行阻拦了,但是不是所有的请求都给做跨域,对href属性都不拦截。...简单请求:一次请求 非简单请求:两次请求,发送数据之前会先发第一次请求做‘预’,只有‘预’通过后才再发送一次请求用于数据传输。...3、关于预 发送真正请求之前,会默认发送一个options请求,做预,预成功后才发送真正请求 - 请求方式:OPTIONS - “预”其实做检查,检查如果通过则允许传输数据,检查不通过则不再发送真正想要发送消息...CORS缺点:上是复杂请求时候得先做个预,再发真实请求。...,默认情况下,HTTP Authentication信息,Cookie头以及用户SSL证书无论请求中或是实际请求都是不会被发送。

    1.5K20

    Django框架理解和使用常见问题

    9、CORS跨域资源共享 首先会发送"预"opption",请求,如果"预"成功,则发送真实数据。...生成HTMl标签,验证用户数据 is_vaild,HTML Form提交保留上次提交数据,初始化页面显示内容 11、CBV和FBV CBV指定类上面加上装饰器或在此方法上面添加装饰器...Nginx中 HttpUwsgiModule作用是与uWSGI服务器进行交换,为什么有了uwsgi为什么还需要Nginx?...使用django开发站点时,可以使用django-debug-toolbar来进行调试,settings.py中添加 'debug—toolbar.midleware.Debug ToolbarMiddleware...Django内置ORM跟框架内其他模块耦合程度高。应用程序必须使用Django内置ORM,否则就不能享受到框架内提供种种基于其ORM便利。

    1.3K20

    django 1.8 官方文档翻译: 3-6-2 内建中间件

    注意 如果你站点部署负载均衡器或者反向代理之后,并且Strict-Transport-Security协议头没有添加到你响应中,原因是Django有可能意识不到这是一个安全连接。...而在另一方面,如果你使用Django执行为了下载文件而请求授权之类事情,并且你不能使用你web服务器设置协议头,这个设置会很有用。...如果JavaScript服务器响应中被重放,页面就会停止渲染,并展示一个错误页来取代。 X-XSS-Protection协议头用来控制XSS过滤器操作。...警告 浏览器XSS过滤器是一个十分有效手段,但是不要过度依赖它。它并不能测到所有的XSS攻击,也不是所有浏览器都支持这一协议头。确保你校验和过滤了所有的输入来防止XSS攻击。...注意 如果你负载均衡器或者反向代理服务器后面部署应用,而且Django不能辨别出什么时候一个请求是安全,你可能需要设置SECURE_PROXY_SSL_HEADER。

    95630

    每天10个前端小知识 【Day 6】

    移动端点击有 300ms 延迟是因为移动端会有双击缩放这个操作,因此浏览器 click 之后要等待 300ms,看用户有没有下一次点击,来判断这次操作是不是双击。...click 延时问题还可能引起点击穿透问题,就是如果我们一个元素上注册了 touchStart 监听事件,这个事件会将这个元素隐藏掉,我们发现当这个元素隐藏后,触发了这个元素一个元素点击事件... JavaScript 中,NaN 最特殊地方就是,我们不能使用相等运算符(== (en-US) 和 === (en-US))来判断一个值是否是 NaN,因为 NaN == NaN 和 NaN ==...(例如 V8 引擎) 事件触发线程:用来控制浏览器事件循环,注意这不归 JavaScript 引擎线程管,当事件被触发时,该线程会把事件添加到待处理队列队尾,等待 JavaScript 引擎处理。...异步 http 请求线程: XMLHttpRequest 连接后通过浏览器新开一个线程请求,将检测到状态变更时,如果设置有回调函数,异步线程就产生状态变更事件,将这个回调再放入事件队列中。

    12310

    django 1.8 官方文档翻译:4-2-1 Django模版语言

    模版包括使用时会被值替换掉 变量,和控制模版逻辑 标签。 下面是一个小模版,它说明了一些基本元素。后面的文档中会解释每个元素。...我们希望Django模版语言可以用在更多地方,而不仅仅是XML/HTML模版。在线上世界,我们email、Javascript和CSV中使用它。你可以在任何基于文本格式中使用这个模版语言。...Django自带了大约24个内置模版标签。你可以 内置标签参考手册中阅读全部关于它们内容。为了体验一下它们作用,这里有一些常用标签: for 循环数组中每个元素。...如果你使用Django模板系统,会处于保护之下。 如果关闭它 如果你不希望数据自动转义,站点、模板或者变量级别,你可以使用几种方法来关闭它。 然而你为什么想要关闭它呢?...要在模板中访问它们,确保应用在INSTALLED_APPS之内(在这个例子中我们添加了'django.contrib.humanize'),之后模板中使用load标签: {% load humanize

    1.2K30

    Django之Template介绍及日常应用

    ,从列表长度开始 forloop.recounter0: 当前循环倒数计数,从列表长度减1开始,标准 forloop.first: bool值,判断是不是循环第一个元素 forloop.last: bool...值,判断是不是循环最后一个元素 forloop.parentloop: 用在嵌套循环中,得到parent循环引用,然后可以使用以上参数 4 {% cycle %} 循环是轮流使用给定字符串列表中值...骨架”模版,它包含您站点中全部元素,并且可以定义能够被子模版覆盖 blocks 。...它们主要用途是添加所有的模板context共享公共数据,而不需要在每个视图中重复代码。 Django提供了很多 内置context处理器 ....那大家有没有想过,我们调用render方法时候并没有把request对象作为参数传给模板啊,为什么就可以直接调用呢?

    1.4K20

    【前端技能树-需要避免坑】Javascript 开发者容易花田里犯

    为什么? 大多数其他语言中,上面的代码都会导致类似这样错误。因为变量 i “生命周期”(即作用域)被限制 for 循环语句中。...但在 JavaScript 中,情况并非如此,即使 for 循环完成后,变量 i 仍留在作用域中,退出循环后保留其最后一个值。(这种行为被称为变量提升。) 有一个解决办法。...触发点击之后循环引用被创建,即 element→onClick→element→onClick→element… 有趣是,即使从 DOM 中删除了 element,上面的循环引用也会阻止 element...低效 DOM 操作 虽然使用 JavaScript 操作 DOM (例如,添加、修改和删除元素)变得相对容易,但却无法提高操作效率。 一个常见例子是每次添加一个 DOM 元素代码。...添加 DOM 元素是一项开销很大操作,连续添加多个 DOM 元素代码效率很低,很可能不能很好地工作。

    19211

    译文:开发人员面临 10个最常见JavaScript 问题

    但是,JavaScript中,情况并非如此,即使for循环完成后,变量i仍保留在作用域中,退出循环后保留其最后一个值。(顺便说一句,此行为可称为变量提升)。...一个常见示例是一次添加一个DOM元素系列代码。添加DOM元素是一项代价高昂操作。连续添加多个DOM元素代码效率低下,并且可能无法正常工作。...当需要添加多个DOM元素时,一种有效替代方法是改用文档片段,从而提高效率和性能。...JavaScript 问题#6:循环中不正确地使用函数定义 请考虑以下代码: 根据上述代码,如果有10个输入元素,单击其中任何一个都将显示“这是元素#10”!...这是因为,当为任何元素调用onclick时,上述循环将已完成,i值已经为10(对于所有元素)。

    1.3K20

    Django Web开发基础知识

    服务器处理完客户请求,并收到客户应答后,即断开连接。采用这种方式可以节省传输时间。 HTTP请求方式 GET提交数据会放在URL之后,以?...2.如果没有创建app名字,也可以进入django目录中,执行 python manage.py startapp MyWeb 命令创建. 更多django shell命令行参数。...', admin.site.urls), path("hello/",views.hello,name="hello") ] 最后我们views.py视图函数里添加一条路由. from django.shortcuts...forloop.last 当遍历元素为最后一项时为真 forloop.parentloop 用在嵌套 for 循环中,获取上一层 for 循环 forloop 常用过滤器:: 常用过滤器...项目下APP里面,创建一个templatetags目录,这个目录名不能变.

    2.1K20

    报`Uncaught (in promise) TypeError: NetworkError when attempting to fetch resource.`错误解决办法

    fetch API中添加错误处理逻辑,例如使用catch()方法来捕获异常并进行适当错误处理。 ---- 这个错误通常是由于无法获取到请求资源导致。...可以尝试d3.json()方法与其回调函数之间添加.catch(),以便更好地处理异常。另外,为了避免出现跨域请求问题,建议将地图文件放置与HTML文件相同目录下并使用相对路径进行引用。...服务器确认允许之后,才发起实际 HTTP 请求。请求返回中,服务器端也可以通知客户端,是否需要携带身份凭证(包括 Cookies 和 HTTP 认证相关数据)。...CORS请求失败会产生错误,但是为了安全,JavaScript代码层面是无法获知到底具体是哪里出了问题。你只能查看浏览器控制台以得知具体是哪里出现了错误。...,从 JavaScript 中发起请求需要被预

    3K20

    04.Django基础四之模板系统

    safe     Django模板中进行模板渲染时候会对HTML标签和JS等语法标签进行自动转义,原因显而易见,这样是为了安全,django担心这是用户添加数据,比如如果有人给你评论时候写了一段...但是有的时候我们可能不希望这些HTML元素被转义,比如我们做一个内容管理系统,后台添加文章中是经过修饰,这些修饰可能是通过一个类似于FCKeditor编辑加注了HTML修饰符文本,如果自动转义的话显示就是保护...我们去network那个地方看看,浏览器看到都是渲染之后结果,通过networkresponse那个部分可以看到,这个a标签全部是特殊符号包裹起来,并不是一个标签,这都是django搞得事情。...for标签     遍历每一个元素: 写个for,然后 tab键自动生成for循环结构,循环很基础,就这么简单用,没有什么break之类,复杂一些功能,你要通过js {% for person...,明白为什么django会加这一套防御。

    2.5K30

    django入门:视图及模版

    创建 django 视图 普通视图 1.首先在应用文件夹下创建 urls.py 文件,用来配置视图 url,然后我们需要在项目下 urls.py 文件中将该应用 urls 配置进去 # 项目下...后,再次匹配下层地址,所以 blog/ # 后面不可以添加 "$" 符号,不然会导致不能匹配到地址,namespace 为了区分不同应用下同名模版 url(r'^blog/', include...,父类已经关闭则子类也关闭 5.django 常用内置模版过滤器 模板过滤器是变量被显示前修改它一个简单方法,以 "|" 拼接,过滤器参数跟随冒号之后并且总是以双引号包含,例如 {{ value...date:"xxx",按指定格式字符串参数格式化 date 或者 datetime 对象,例如 {{ pub| date:"F j, Y" }} length,返回变量长度;对于列表,返回列表元素个数... custom_filter.py 文件中添加过滤器 from django import template from blog.models import Category # register

    1K20

    Django调用百度地图api地图上批量增加标记点

    根据需求坐标地图上添加若干个标记点,并批量为各个标记点设置监听函数,使之显示我们所需要信息 开始 创建工程 首先,创建一个测试用工程来测试我们需要,可以使用pycharm或者django自带命令创建工程...django-admin startproject addressdemo 创建app 创建工程之后,cd到工程目录,创建一个名为addresstest应用python manage.py startapp...注册百度开发者账号获取秘钥 访问百度地图开放平台注册账号并获取秘钥 address.html添加上引入百度apijs代码 <script type="text/<em>javascript</em>"...': '000000', 'HOST': 'localhost', 'PORT': '3306', } } 设置模型类 创建app下models.py中添加如下语句...添加设置地图js 因为js语句块放在页面哪里都可以被执行,所以大家可以按照自己喜好放置,在这里我选择放在页面的最后 var map

    1.5K20

    小白学Python – Django Web 开发教程 三(Django 模板)

    Django模板基本上是 .html 文件中用 HTML、CSS 和 Javascript 编写Django 框架有效地处理和生成最终用户可见动态 HTML 网页。...Django 主要与后端一起运行,因此,为了提供前端并为我们网站提供布局,我们使用模板。根据我们需要,有两种方法可以将模板添加到我们网站。 我们可以使用单个模板目录,该目录将分布整个项目中。...创建模板文件夹后,我们目录应如下所示 –  让我们模板字典中添加该目录位置。...标签不能修改变量值,而过滤器可用于增加变量值或根据自己需要修改它。...模板继承允许您构建一个基本“骨架”模板,其中包含站点所有常见元素并定义子模板可以覆盖块。extends标签用于Django中模板继承。人们需要一次又一次地重复相同代码。

    21520
    领券