質問する
739 次
2 に答える
1
それを試してみてください:
<textarea id= "desc" name= "<?php echo('desc_'.$n); ?>"><?php if (isset($desc[$n])) echo ($desc[$n]); ?></textarea>
于 2012-08-28T18:59:38.053 に答える
1
同じIDで複数のフィールドを追加しているようです。ループ内にはこれがあります:
<input type= "text" id= "qty" name= "<?php echo('qty_'.$n); ?>" maxlength "10" value= "<?php if (isset($qty[$n])) echo ($qty[$n]); ?>"/>
<textarea id= "desc" name= "<?php echo('desc_'.$n); ?>" value= "<?php if (isset($desc[$n])) echo ($desc[$n]); ?>"></textarea>
<input type= "text" id= "unit_price" name= "<?php echo('unit_price_'.$n); ?>" maxlength= "10" value= "<?php if (isset($unit_price[$n])) echo ($unit_price[$n]); ?>" />
<input type= "text" id= "line_total" name= "<?php echo('line_total_'.$n); ?>" maxlength= "10" value= "<?php if (isset($line_total[$n])) echo ($line_total[$n]); ?>" />
これにより、ループが複数回実行されたときに同じIDの複数のインスタンスが生成されますが、これは無効なhtmlであり、発生している問題を説明している可能性があります。私はこのようなことをすることをお勧めします:
<input type="text" name="qty[]" id="<?php echo('qty_'.$n); ?>" maxlength="10" value="<?php if (isset($qty[$n])) echo ($qty[$n]); ?>"/>
<textarea name="desc[]" id="<?php echo('desc_'.$n); ?>" value="<?php if (isset($desc[$n])) echo ($desc[$n]); ?>"></textarea>
<input type="text" name="unit_price[]" id="<?php echo('unit_price_'.$n); ?>" maxlength="10" value="<?php if (isset($unit_price[$n])) echo ($unit_price[$n]); ?>" />
<input type="text" name="line_total[]" id= "<?php echo('line_total_'.$n); ?>" maxlength="10" value="<?php if (isset($line_total[$n])) echo ($line_total[$n]); ?>" />
お気づきのように、名前とIDを入れ替えました。複数の名前を使用できます。さらに、私が行ったように中括弧を追加すると、同じ名前のフィールドが配列として返され、バックエンドでの処理が非常に簡単になります。
于 2012-08-28T19:02:10.000 に答える