2

このような私のビューコード

<?php for($i = 1; $i <=10; $i++):?>
        <tr>
            <td width="10">
                <?php echo $i;?>
            </td>

            <td>
            <input size="10" type="text" name="code[]" value="<?php echo '';?>" id="code" />
            </td>
            <td width="20%">
                <name="product[]" value="<?php echo '';?>" id="product"/>
            </td>
            <td>
                <input size="10"type="text" name="rate[]" value="<?php echo '';?>" id="rate" />
            </td>
            <td>
                <input size="10" type="text" name="quantity[]" value="<?php echo '';?>" id="quantity" />
            </td>
            <td width="15%">
                <name="total[]" value="<?php echo '';?>" id="total"/>
            </td>
            <td>
                <input size="10" type="text" name="sell[]" value="<?php echo '';?>" id="sell" />
            </td>

        </tr>
        <?php endfor;?>

コードフィールドにコードを入力するだけで、製品フィールドにajaxが対応する製品名を設定します.しかし、主な問題は、2行目または3行目にコードを入力すると、最初の行にも製品が設定されることです. ajaxで同名の配列入力。私はcodigniterフレームワークにいます

4

1 に答える 1

0

各行の同様の HTML タグに同じ ID を使用しています。これはノーノーです。ID は、ドキュメント全体で一意であることが期待され、想定されています。

ID をクラスに置き換えます。

<td>
    <input size="10" type="text" name="code[]" value="<?php echo '';?>" class="code" />
</td>

または、$i一意になるように各 ID に変数を追加します。

<td>
    <input size="10" type="text" name="code[]" value="<?php echo '';?>" id="code_<?php echo $i ?>" />
</td>

それに応じて JavaScript を調整します。

于 2012-09-04T18:41:39.073 に答える