Javascript:如何从$ _SESSION数组中打印值?

时间:2017-02-17 05:56:22

标签: javascript php arrays session persistence

有没有办法让javascript创建php代码,在php页面上运行时执行?我正在尝试将输入的值设置为,其中div_id是一个js变量,输入是一个2D关联数组。

问题是它确实将值设置为“”而不是floor_type字段的值。其他一切似乎都有效。

inputs_div.innerHTML += `<div id="`+div_id+`" class="dynamic_div">
                        <ul class="dynamic_ul">
                        <li><input type="text" onblur="$('.save').click();" placeholder="Flooring Type: Wood Floor, Tile, etc." name="inputs[`+div_id+`][floor_type]" maxlength="255" value="<?php echo $_SESSION['inputs']['`+div_id+`']['floor_type']; ?>"></li>
                        </ul>
                        </div>

我正在使用javascript动态创建一些html输入,但是我正在寻找一种方法来阻止它们在刷新页面时被清除。也许有一种更简单的方法可以让输入保持在那里?

我的想法是使用ajax从每个输入元素的onblur事件运行一些php代码,这会将input [] []数组保存到会话中,因此刷新页面时不会丢失。

1 个答案:

答案 0 :(得分:1)

使用隐藏字段存储$ _SESSION []值,然后在文档就绪时获取隐藏字段的值并设置为javascript变量。

<input type="hidden" id="hdn" value="<? php echo $_SESSION['inputs'] ?>" />


$(document).ready(function()
{    var session_value = $('#hdn').attr('value');    // now use session_value variable when set the innerhtml of inputs_div });