0

我有一种杂货清单,我希望能够在其中添加来自不同商店的商品。

目前我有一个表格,我在其中发布文章编号和数量,然后按提交将项目添加到购物清单(下表)。

<form action="<?php echo $current_file.$id; ?>" method="POST">

    Store:  <select>
                    <option value="gross1">Store 1</option>
                    <option value="gross2">Store 2</option>
                    <option value="gross3">Store 3</option>
            </select>

    Art no: <input type="text" size="15" name="number"  /> 

    Quantity: <input type="text" size="3" name="q" />

    <input type="submit" value="Add item" />

</form>

<table>
    <tr>
        <th>
            Art no
        </th>
        <th>
            Article name
        </th>
        <th>
            Price
        </th>
        <th>
            Quantity
        </th>
        <th>
            Total
        </th>
    </tr>

商店项目列表存储在 mysql 表中,所以我想通过下拉选择列表选择商店(或表,如果你愿意的话)。但问题是,如果我从中选择商品的商店不是商店 1,那么在每次按下提交后一遍又一遍地选择商店会非常令人沮丧。

我认为我不能使用使用某种 GET 变量来指定所选商店的脚本,因为我已经使用 GET 来指定所选杂货清单。是否有另一种方法可以让网站在页面刷新后记住所选商店?

提前致谢!

4

2 回答 2

0

In your php you would normally set SELECTED against the option based on the POSTed value. But you need to set a name on the select tag.

Have you tried searching google for any of this?

于 2013-03-29T23:04:14.807 回答
0

我有一个类似的问题,需要一个快速的解决方案。从下拉列表中选择一个值并提交后,页面重新加载,这会重置下拉列表 - 不保留所选值(即使发送了所选值($_GET) . 对我来说,这个问题纯粹是审美问题,因为我希望用户看到他们选择的价值。这就是我所做的:

// Change the parent dropdown selected value to the currently selected value
    $(window).load(function() {

        // Get url attributes which should contain the $_POST or $_GET value and split it. You have to refine this in case you have multiple attributes

        var str=window.location.href; var n=str.split("=");

         // This should be the selected value attribute
         var myAttrVal= n[1];

       // check all options and grab the value (or whatever other unique identifier you're using). Check this value against your url value and when they match, add the selected attribute to that option.
        $('#selectID option').each(function() {

            var selectedOptVal = $(this).attr('value');

            if ( myAttrVal  == selectedOptVal) {

                $(this).attr('selected', 'selected');
            }
        });

    });

我确信有更好的方法可以做到这一点,但我希望它能给您提供有关如何解决问题的想法。

于 2015-05-11T17:13:44.073 回答