我必须使用python制作数字Scrum板。作为框架,我正在使用Django。
现在我正在努力将数据传递给FancyBox iframe
。我的想法是使用隐藏字段<form>
,如果我提交表单,则应将数据发布到iframe
。
iframe
包含另一个表单,该表单必须包含其他表单提交的值。
我有一个包含列的表,表和列都有id,其中表id是唯一的,列id不是,如果我想添加一个项,表和列id应该传递给一个创建表单(在iframe内部。)
这是我的第一张表格的样子:
<form id="createtask" method="get" action="{% url "create_task" board.id column.id %}">{% csrf_token %}
<input class="hidden" name="column_id" id="column_{{ column.id }}" value="{{ column.id }}">
<input class="hidden" name="board_id" id="board_{{ board.id }}" value="{{ board.id }}">
<input type="submit" value="Create">
</form>
我知道我使用get
代替post
,我之所以这样做,这是answer的第二个选项。
答案包含以下jQuery:
$(function() {
$("#createtask").submit(function() {
$form = $(this);
$.fancybox({
'title': "form submission",
'href': $form.attr("action") + "?" + $form.serialize(),
'type': 'iframe'
});
return false;
});
});
问题是数据是通过的,而是在iframe
内部,它会在iframe
内加载一个包含我想要的内容的新页面。
如果我使用
<a href={% url "create_task" board.id column.id %}>
而不是
<input type="submit" value="Create">
表单未提交,但iframe
内的表单已按预期加载。
我的问题是,有没有将数据传递给iframe的解决方案?
是否有更多的Django / Python方式呢?
它会帮助我使用bootstrap模式而不是iframe
吗?
rcadhikaris答案很好,但它只是一种解决方法。
使用jQuery从parent.document
中读出数据使得我根本不使用该表单,但问题仍然是如何将表单数据提交给iframe。
答案 0 :(得分:1)
为什么不使用data-
代码并使用jQuery从iframe中获取代码。