0

そのような選択としてグループリストがあります:

<select id="groups">

<option value="g1">G1</option>
<option value="g2">G2</option>
<option value="g3">G3</option>

</select>

基本的に次のものを含む連絡先リストがあります。

Name = group
============
Casper  G1-G2-G3
Andy    G1-G2
Mark    G2-G3 

checkboxユーザーがforをチェックしてボタンCasperをクリックすると、グループ リストで強調表示 (選択済み) されます。連絡先リストの group フィールドの値を取得すると、3 つのグループすべてにカンマが付いています。あなたの助けは非常に高く評価されています。ありがとう、EditG1-G2 and G3"G1-G2-G3"

4

3 に答える 3

1

編集ボタンで選択した属性をオプションに割り当ててから、cssを使用してスタイルを設定できます。

option[selected] { background: #f00; }
于 2012-07-25T12:22:22.797 に答える
1

いくつかのヒント、この問題を自分で解決することはあなたにとって良いことだと思います;)

  • 複数のグループにCasper属しているようですので、あなたに設定multiple="true"する必要がありますselect

  • をチェックするCasperと、彼に関連付けられたグループ データを取得します["g1", "g2", "g3"]。このリストをループし、各オプションの値を に設定しますselected

  • IE6 をサポートしたい場合はselectedselectedオプションなどにクラスを追加する必要もあります。

  • CSS ルール{ option.selected: background: yellow}がそのトリックを行います。

  • 最新のブラウザのみを対象とする場合は、option[selected]{ xxx }うまく機能します。

于 2012-07-25T12:26:48.410 に答える
1

CasperOK、クリックすると次の関数が呼び出されるためのチェックボックスがあると思います。

function(groupstring) {
// groupstring is something like "G1-G2"

    var groups = groupstring.split("-");
    var options = document.getElementById("groups").options;
    for (var i=0; i<options.length; i++) {
        var opt = options[i];
        opt.defaultSelected = groups.indexOf(opt.value) > -1;
    }
}

selectedプロパティまたはプロパティのどちらを使用するかわかりませんdefaultSelectedmultipleselect がtrue ( ) に設定されている必要があることに注意してください<select id="groups" multiple>

于 2012-07-25T12:55:22.747 に答える