在Views.py中,我创建了一个列表变量-
mortgages_counter.append(MonthlyPaymentAmount)传入.html模板的方式为:
<input id ='mortgages_counter' name='mortgages_counter' type='hidden' value='{{mortgages_counter}}'>在JQuery中(单独的文件,我必须检查这个列表的每个元素是否都被使用了)。值以如下形式传输到.js文件:
var mortgages_counter = $('#mortgages_counter').val();但根据控制台,它被作为字符串传输到类似Jquery的'1234','125‘,因为某些原因,它的长度是1,还检查了对索引的访问-’和1-1等,如何操作这个列表作为列表,而不是字符串?
发布于 2018-01-04 01:37:45
虽然@JulienGregoire已经回答了,但我要提到的是另一种方法。您可以遍历mortgages_counter并将每个项目添加到input标记。然后在Jquery中,使用.each()遍历每个对象并进行检查。
在您的模板中,执行如下操作。
{% for mortgages in mortgages_counter %}
<input id='mortgages_counter' name='mortgages_counter' type='hidden' value='{{ mortgages }}'>
{% endfor %}在你的Jquery中,像这样使用.each()。
$("#mortgages_counter").each(function () {
var mortgage = $(this).val();
/* do rest of the things and/or comparisons */
});发布于 2018-01-04 01:20:44
您应该将值作为字符串,这可以通过使用join筛选器来实现。使用您知道不会在列表的值中使用的分隔符。例如,如下所示:
<input id ='mortgages_counter' name='mortgages_counter' type='hidden' value='{{mortgages_counter||join:"|" }}'>请参阅:https://docs.djangoproject.com/en/2.0/ref/templates/builtins/#join
然后使用相同的分隔符拆分javascript。它将字符串转换为数组:
var mortgages_counter = $('#mortgages_counter').val().split('|');https://stackoverflow.com/questions/48081968
复制相似问题