繁体   English   中英

在php中提交表单后保留动态填充的选择选项的值

[英]Retaining values of dynamically populated select option after form submit in php

提交表单后,我尝试保留表单值。

document.getElementById('start_date').value = "<?php echo $_POST['start_date'];?>";
document.getElementById('end_date').value = "<?php echo $_POST['end_date'];?>";

它适用于日期选择器,但不适用于选择选项。

HTML代码:

<form id=Inputs action="" method="POST" onsubmit="return ray.ajax()">
<center><table>
<td align="left" width=200px> <b>Select The Product:</b> 
  <select name="product" id="product" onChange="changecat(this.value);changeenv(this.value);">
    <option value="" disabled selected>Select</option>
    <option value="MOBILE">MOBILE</option>
    <option value="RAM">RAM</option>
    <option value="CAT">CAT</option>
</select></td>
<td width=200px> <b>Select Data Center:</b> 
  <select name="dc" id="dc">
    <option value="" disabled selected>Select</option>
</select></td>
<td width=200px> <b>Select Environment:</b> 
  <select name="env" id="env"><option value='NO' selected disabled>Select</option>
</select></td>
<td width=200px> <b>Select Start Date:</b>
<input type="date" name="start_date" id="start_date">
</td>

<td width=200px><b>Select End Date:</b>
<input type="date" name="end_date" id="end_date"></td></tr></table></center><br>
<div align="center"><input type="submit" class="button" value="Submit" name="submit" onclick="clearBox('tb')">&nbsp;&nbsp;&nbsp;<input type="reset" class="button" value="Reset" name="reset" onclick="clearBox('tb')"></div>
<br>
</form>

使select下拉列表动态填充的JS代码:

<script language="javascript" type="text/javascript">
    var mealsByCategory = {
    MOBILE: ["Select","ALL","RED","GREEN"],
    RAM:["Select","ALL","ROM","CPU"],
    CAT:["Select","ALL","DOG","FOOD"],

}

    function changecat(value) {
        if (value.length == 0) document.getElementById("dc").innerHTML = "<option></option>" ;
        else {
            var catOptions = "";
            for (categoryId in mealsByCategory[value]) {
                catOptions += "<option>" + mealsByCategory[value][categoryId] + "</option>";
            }
            document.getElementById("dc").innerHTML = catOptions;
        }
    }


    var environment = {
    MOBILE: ["Select","Pr","Prv"],
    RAM:["Select","Pr","Sl"],
    CAT:["Select","Pr","BS"],
}

    function changeenv(value) {
        if (value.length == 0) document.getElementById("env").innerHTML = "<option></option>" ;
        else {
            var envOptions = "";
            for (categoryId in environment[value]) {
                envOptions += "<option>" + environment[value][categoryId] + "</option>";
            }
            document.getElementById("env").innerHTML = envOptions;
        }
    }
    </script>

您的代码中有错误,如下所示:

var environment = {
    MOBILE: ["Select","Pr","Prv"],
    RAM:["Select","Pr","Sl""],  // Remove extra " 
    CAT:["Select","Pr","BS"],
}

看看这里-https://jsfiddle.net/bhedabhupat/nragst1z/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM