将全局 javascript 变量传递到操作表单的参数中

Pass a global javascript variable into argument of an action form

我想包含一个全局 javascript 变量,它会动态更新到操作表单的参数中。 以前,我只是简单地使用 django 模板语法将视图返回的 django 变量字符串包含到操作表单中,但现在它已更新,我需要想出一种方法将这个更新的 javascript 变量传递到 GET方法。 我将变量保存为 window 属性 "window.subgraph_query = 'foo'" 这个变量应该随时间变化,所以它也需要在表单参数中更新。我怎样才能做到这一点?我觉得应该很简单

谢谢!

<script type="text/javascript">

    // BEFORE
    var subgraph_query = "{{ subgraph_query }}";

    //NOW
    window.subgraph_query = "{{ subgraph_query }}";

</script>

// BEFORE
<form action="/graph/network_to_gml/{{ subgraph_query }}" method="get">
   <input name="export-node-list" id="export-node-list"type="text"/>
</form>

// NOW

<form action="/graph/network_to_gml/JAVASCRIPT_VARIABLE" method="get">
   <input name="export-node-list" id="export-node-list"type="text"/>
</form>

您需要在表单中添加一个隐藏的输入字段,并为一个js变量赋值。这样,用户将看不到它,但您的脚本会收到它。 隐藏字段类型示例:

 <input type="hidden" name="country" id='hidden1' value="">

在 JS 中:

document.getElementById('hidden1').value = 'Poland';