0

各セルに ID 付きの入力または選択フィールドが含まれているテーブルに問題があります。セルの内容は、MySQL クエリから動的に生成されます。動的に生成された SELECT ドロップダウンを除いて、すべて正常に動作します。switch ステートメントで次のコードを使用しています。

case 'crew_1':
case 'crew_2': 
    echo '<td><select class="'.classExt($types[$key]).' '. $key .'_c" id="' . $key . '--' . $idx .'">';
    echo '<option value="" selected="selected"></option>';
    while ($rowtech = mysqli_fetch_assoc($rtech)){
        echo '<option value="' . $rowtech['name'] . '">' . $rowtech['name'] . '</option>';
    } mysqli_data_seek($rtech,0);
    echo '<option value="TEST">TEST</option>';      
    echo '</select></td>'; break;

これにより、次の HTML が作成されます。

<td>
    <select class="varchar crew_1_c" id="crew_1--1">
        <option value="" selected="selected"></option>
        <option value="Name 1">Name 1</option>
        <option value="Name 2">Name 2</option>
        <option value="TEST">TEST</option>
    </select>
</td>

これから空白または「TEST」オプションを選択すると、console.log に正しい値が返されますが、動的に生成された名前のいずれかを選択すると、ボックスはデフォルトの空白値に戻ります。Chrome と IE で同じ応答が得られます。

私の切断はどこですか?

コンソールへの出力を生成するスクリプトを要求する人のために含まれています。

$('tbody select, tbody input').change(function(){
    console.log($(this).val());
});
4

2 に答える 2

0

OP、name属性がありません。これは私にとってはうまくいきます:

<form method="post" action="">
    <select class="varchar crew_1_c" id="crew_1:1" name="choice">
        <option value="" selected="selected"></option>
        <option value="Name 1">Name 1</option>
        <option value="Name 2">Name 2</option>
        <option value="TEST">TEST</option>
    </select>
    <input type="submit" value="Submit" name="submit" />
</form>

<?php
var_dump($_REQUEST);
?>
于 2013-01-17T18:30:06.040 に答える
0

私の問題を見つけました。以前の JS リクエストでは、一貫性を保つために値を UpperCase() に設定していたことを発見するためにコードを掘り下げましたが、ドロップダウンでの値の一致が壊れていました。選択オプションでも値を大文字に設定し、TA-DA!

助けてくれてありがとう、みんな。明白なことを指摘するには、新鮮な目が必要な場合があります。

于 2013-01-18T17:13:36.960 に答える