我使用下面的javascript代码将选项值添加到选择字段。
<script type="text/javascript">
$("#location").append($("<option></option>").val("Any Location").text("Any Location"));
$("#location").append($("<option></option>").val("Location 1").text("Location 1"));
$("#location").append($("<option></option>").val("Location 2").text("Location 2"));
</script>
这样可以正常但是由于我的表单是使用PHP设置的,我需要使用以下代码,以便在显示结果页面时选择的字段中保留所选的值。
<option value="Any Location"<?php if(isset($_SESSION['location'])) { if($_SESSION['location'] == "Any Location") { echo "selected";} } ?> >Any Location</option>
是否有可能以某种方式将PHP SESSION代码与javascript集成?
由于
答案 0 :(得分:0)
将其写为JSON:
var dataLocation = <?php
if(isset($_SESSION['location']))
{
echo '{"location" : "'.$_SESSION['location'].'"}';
}
else {
echo '{"location" : "Unknown"}';
} ?>
现在,JavaScript会将此解析为有效代码,您可以使用以下代码检索位置:dataLocation.location
;
如果您在脚本顶部执行此操作,则可以执行此操作:
$("#location").append($("<option></option>").val("Any Location").text("Any Location"));
$("#location").append($("<option></option>").val("Location 1").text("Location 1"));
$("#location").append($("<option></option>").val("Location 2").text("Location 2"));
//updated version:
var selectElement = $("#location > option[value='"+dataLocation.location+"']");
if (selectElement)
{
selectElement.attr("selected", true);
}
为此,option
的值必须与session
中设置的位置相同。