0

「サービス」と呼ばれる選択オプションに 2 番目の属性を追加する必要がありますが、ソースを確認すると「値」属性のみが設定されています

for(var index = 0;  index < list.length; index ++){
        elementToBeAdded.options[index + 1]  = new Option(list[index].description, list[index].id);

        elementToBeAdded.options[index + 1].setAttribute("service",list[index].service);
}

出力:

<option value="myValue">
  my text
</option>

期待される出力:

<option value="myValue" service="myService">
  my text
</option>

オプションの作成時に各オプションに属性を追加するにはどうすればよいですか?

最終的に、オプションが選択されたときに使用できるように、各オプションに対して追加の値を保存する必要があります

4

2 に答える 2

0

この種のものの機能を作成できます:

function setAttributes(element, attributes) {
  for(var key in attributes) {
    element.setAttribute(key, attributes[key]);
  }
}

そして、この関数を次のように使用します。

setAttributes(option, {"value": "myValue", "service": "myService"});
于 2013-03-25T16:59:46.933 に答える
0

ほとんどのブラウザーでの「ソースの表示」機能の役割は、ブラウザーが最初に読み取ったソースを表示することです。したがって、クライアント側のコードを介してドキュメントに加えられた変更は、ソースのビューアーには反映されません。ただし、ブラウザーの DOM インスペクター (ほとんどのブラウザーに搭載されています) を使用して、ドキュメントの最新バージョンを分析および表示できます。

要素に属性が正しく設定されていることを確認することが目的の場合は、 を使用してその値を取得するだけですyourOption.getAttribute('service')

于 2013-03-25T17:21:27.377 に答える