0

目前我有一个沿着这些线路http://jsfiddle.net/4Zw3M/1/的设置,其中第二个下拉列表由先前的选择填充。

问题是这些字段是由数据库填充的。因此,作为 PHP,我会编写选项下拉列表,以便在提交后保留该值。

<option <?= $foobar == $foo->slug ? 'value="'.$foo->slug.'" selected="selected"' : 'value="'.$food->slug.'"'?>><?=$foo->name?></option>

在用户提交表单后,我无法弄清楚如何保留该值。另外,是的,我确实$foobar = mysqli_real_escape_string($mysqli, $_POST['foobar']);在页面顶部有记录价值。

其次,我试图弄清楚如何以这种格式添加值,因为该值实际上是名称的 id。

|id| |name  |
|1 | |ten   |
|2 | |twenty|

所以在正常格式中它会是

<option value="<?=$foo->id?>"><?=$foo->name?></option>

目前我只能使值与名称相同。

4

2 回答 2

0

您可以将下拉菜单文本发布到操作页面并使用以下方法捕获值:-

    $s_option = $_POST["somename"];

根据所选文本($s_option)的值调用 JS 函数,如下所示:-

function func1()
{
document.forms[0].somename.selectedIndex=0;
}

function func2()

{
document.forms[0].somename.selectedIndex=1;
}

等等......

于 2013-04-01T16:41:23.137 回答
0

我会在 jquery/ajax/php 中做,希望这会有所帮助:

<script type="text/javascript">
    $(document).ready(function(){
        $('#dropdown1').on('change', function(){
            var value = $(this).val();

            $.ajax({
                type: "post",
                url: "path_to_your.php",
                data: ({p : value}),
                datatype: "json",
                success: function(results){
                    $.each(results, function(v) {
                        $('#dropdown2').append($('<option>', {
                            value: v,
                            text: v
                        }));
                     });
                }

            });
        });

    });
</script>
</head>
<body>
<select id="dropdown1">
    <option>Select One..</option>
    <option value="something">Something</option>
<select>
<select id="dropdown2">

</select>
</body>
于 2013-04-01T17:06:53.527 回答