1

私は多くの要素を持つフォームを持っています.ほとんどは select box, check box, radio です。たとえば、selectboxの下chart[type]では、phpを介して値を設定しています

<select name="chart[type]" id="chart_type" >                         
       <option value="nps" <?php if ( $chart_data['chart']['type'] == 'nps' ) echo ' select="selected" '; ?> >NPS Barchart</option>
       <option value="score" <?php if ( $chart_data['chart']['type'] == 'score' ) echo ' select="selected" '; ?>>Number/score</option>
       <option value="top5" <?php if ( $chart_data['chart']['type'] == 'top5' ) echo ' select="selected" '; ?>>Top 5</option>
</select>

jQueryを使って値から設定するコードをやってみた

<select name="chart[type]" id="chart_type" >                         
    <option value="nps" >NPS Barchart</option>
    <option value="score">Number/score</option>
    <option value="top5">Top 5</option>
</select>

<script>
    $(function(){
            $('[name="chart[type]"]').val( 
                 '<?php echo  $chart_data['chart']['type']; ?>'
            );
    });
</script>

コードがよりきれいになった気がします。すべてのフォーム コードのリフィルをこの方法に変更する予定です。second を使用することの欠点を知りたいですか? .. 私のアプリケーションはチャート レンダリング用で、JavaScript が無効になっていると機能しません。

4

4 に答える 4

1

アプリケーションは JS を無効にしないとまったく機能しないため、このアプローチの欠点と見なされるものは何もありません。実際、この方法で選択ボックスを変換して、AJAX 呼び出しによって値が読み込まれるようにする方が簡単な場合があります。

于 2013-04-04T08:57:04.263 に答える
0

欠点は、コードが JavaScript と jQuery に依存するようになったことです。JavaScript が無効になっている人もいます (ごく一部の人)。デフォルトでは何も選択されていません。

これはベスト プラクティスではありませんが、単純に利便性と使いやすさのために、過去に同様の方法で JavaScript を使用したことを認めなければなりません。やや「ハッキー」な感じ

于 2013-04-04T08:51:53.493 に答える