3

次のようなテーブルフォームがあります。

<table class="table table-striped table-bordered table-condensed">
            <tbody>
                <tr><td><input type="text" class="input-small" name="article" /></td>
                    <td>
                        <select name="colore">
                            <option value="nabuk">Nabuk</option>
                            <option value="nero">Nero</option>
                            <option value="blu">Blu</option>
                            <option value="rosso">Rosso</option>
                        </select>
                     </td>
                    <td>
                        <select name="fondo">
                            <option value="gomma">Gomma</option>
                            <option value="cuoio">Cuoio</option>
                            <option value="legno">Legno</option>
                        </select>
                    </td>
                    <td>
                        <select name="numero">
                            <option value="36">36</option>
                            <option value="37">37</option>
                            <option value="38">38</option>
                            <option value="39">39</option>
                        </select></td>
                    <td><input type="number" class="input-mini" min="1" max="200" name="qnt" step="1" /></td>
                    <td></td>
                </tr>
            </tbody>
        </table>

ユーザーは、Jquery スクリプトを使用して、このテーブルに多くの行を追加できます。このスクリプトは問題なく、正しく動作します。その後、$('form').serialize();Jquery の関数を使用して、PHP ページへの Ajax post 呼び出しを介してテーブル フォームが送信されます。

問題は、非表示の補助フィールド (たとえば、テーブル内の行数を送信する) を使用せずに、または名前にプログレッシブ インデックスを使用せずに、行の各フィールドの値をサーバー側 (PHP) に取得する方法です。行フィールドの?

解決策を説明するものは見つかりませんでした... :|

このスクリプトの次のステップでは、JSON オブジェクトを使用してテーブルの値を PHP に渡しますが、これは二次的な問題です :)

4

1 に答える 1

4

配列を使用できます。[]フィールドの最後にフィールドに名前を付けます。例えば、

<select name="colore[]">
...
<select name="fondo[]">
...
<select name="numero[]">

PHPは、インデックスを次のように自動的に更新します。

$_POST['colore'][0]
$_POST['colore'][1]
$_POST['colore'][2]
etc.
于 2012-06-05T20:41:15.567 に答える