0

データベースから動的に入力されるフォームがあります。while ループを使用して結果を表示します。注文のステータスを変更する 3 つのオプションがあるステータス ドロップダウンがあります。次に、ユーザーはチェックボックスを選択して、行われた選択に基づいて注文のステータスを別のユーザーに電子メールで送信する必要があります。これは現在機能していますが、チェックボックスを手動でクリックするのではなく、ドロップダウンのオプションが選択されたらチェックボックスを true に設定して、このプロセスを自動化したいと考えています。これらの結果を生成する私のコードは次のようになります。

echo '<select id="order_status" name="order_status['.$i.']" id="id" onchange="showUser(this.value)" >';
    echo '<option value = "Pending"   name="order_status['.$i.']" class = "pending"' . ($row['status'] == 'Pending' ? ' selected=selected' : '') . '>Pending</option>';
    echo '<option value = "Approved"  name="order_status['.$i.']" class = "approved"' . ($row['status'] == 'Approved' ? ' selected=selected' : '') . '>Approved</option>';
    echo '<option value = "Disapproved" name="order_status['.$i.']" class ="disapproved"' . ($row['status'] == 'Disapproved' ? ' selected=selected' : '') . '>Disapproved</option>';
    echo '</select>';
    echo '<td><input type="checkbox" name="order_selected['.$i.']"/></td>';
    echo '</td>';

order_status には選択値が含まれ、order selected にはユーザーが選択したチェックボックスが含まれます。チェックボックスが true に設定されている場合、電子メールがユーザーに送信され、注文のステータスが更新されます。チェックボックスの値を永続的に設定する必要がないため、このフロントエンドを実行したいと思います。私の主な問題は、どの順序が選択されているかを知り、正しいチェックボックスが true に設定されていることを確認することです。

どうもありがとう

4

1 に答える 1

1

selectタグのonchange属性を取り除きます

echo '<select id="order_status" name="order_status['.$i.']" id="id">';
echo '<option value = "Pending"   name="order_status['.$i.']" class = "pending"' . ($row['status'] == 'Pending' ? ' selected=selected' : '') . '>Pending</option>';
echo '<option value = "Approved"  name="order_status['.$i.']" class = "approved"' . ($row['status'] == 'Approved' ? ' selected=selected' : '') . '>Approved</option>';
echo '<option value = "Disapproved" name="order_status['.$i.']" class ="disapproved"' . ($row['status'] == 'Disapproved' ? ' selected=selected' : '') . '>Disapproved</option>';
echo '</select>';
echo '<td><input type="checkbox" name="order_selected['.$i.']"/></td>';
echo '</td>';

次に、すべてをjQueryで処理します

$(document).on('change', 'id', function() {
    if (this.value == "Pending") { //Change to whatever should auto check the box
        $("input[type='checkbox']").prop("checked", true);
    }
});
于 2013-03-20T13:32:52.010 に答える