0

クラスを共有する一連のselectリストがあります。それらはすべて互いに重なり合っており、一方はを持っていますが、他方はdisplay: inlineを持っていますdisplay: none。プレーンな JavaScript (jQuery なし) を使用して、表示されているリストを見つけて取得するにはどうすればよいvalueですか?

私は次のようなことを考えていました:

function retrieve() {
  var value
  elements = document.getElementsByClassName('class');
  for (var i = 0; i < elements.length; i++) {
    if(elements[i].style.display = 'inline') {
      value = elements[i].value;
      break;
    }
  }
  alert(value);
}

しかし、アラートには「未定義」と表示されます。コードの何が問題になっていますか?

4

1 に答える 1

3

この行:

if(elements[i].style.display = 'inline') {

する必要があります

if(elements[i].style.display === 'inline') {
// change here --------------^

single=の場合、それは割り当てであり、比較ではありません。では===、それは (厳密な) 比較です。==(緩い比較)を使用することもできます。

于 2012-12-22T22:59:39.360 に答える