Javascript 有没有办法禁用传单层控件中的单选按钮?

Javascript 有没有办法禁用传单层控件中的单选按钮?,javascript,css,leaflet,Javascript,Css,Leaflet,我正在寻找一种在我的底图中选择/禁用单个单选按钮的方法。这是我的密码 这将为myleaflet层创建底图 baseMap = { Map View: mapQuestOpenEnglish Satelite View: mapQuestAerial } mapControl = L.control.layers(baseMap) 最后,我将mapControl添加到地图中,它生成以下html <div class="leaflet-control-layers leaf

我正在寻找一种在我的底图中选择/禁用单个单选按钮的方法。这是我的密码

这将为myleaflet层创建底图

baseMap = {
    Map View: mapQuestOpenEnglish
    Satelite View: mapQuestAerial
}

mapControl = L.control.layers(baseMap)
最后,我将mapControl添加到地图中,它生成以下html

<div class="leaflet-control-layers leaflet-control" aria-haspopup="true">
  <a class="leaflet-control-layers-toggle" href="#" title="Layers"></a>
  <form class="leaflet-control-layers-list">
    <div class="leaflet-control-layers-base">
      <label>
        <input type="radio" class="leaflet-control-layers-selector" name="leaflet-base-layers" checked="checked">
        <span> 
          <span class="default-map">Map View</span>
        </span>
      </label>
      <label>
        <input type="radio" class="leaflet-control-layers-selector" name="leaflet-base-layers">
        <span> 
          <span class="staelite-map">Satelite View</span>
        </span>
      </label>
    </div>
  </form>
</div>

地图视图
卫星视图
我想要一种能够选择/禁用此单选按钮的方法

<input type="radio" class="leaflet-control-layers-selector" name="leaflet-base-layers">


有什么简单的方法可以做到这一点吗?非常感谢您的帮助

好的,不是很干净,但很有效

可以通过相应的跨度标签类选择所需的单选元素。下面是一个简单的JS方法:

function SelectRadio(span_class) {
    var span = document.getElementsByClassName(span_class)[0];
    var radio = span.parentNode.parentNode.getElementsByTagName('radio')[0];
    return radio;
}
你可以这样称呼它:

var element = SelectRadio('staelite-map');
/* Here you'll have the DOM Element. Just use it to enable/disable,
      set selection, or anything else */

你不能用纯javascript吗?我肯定这是可能的,但我不知道如何在没有任何句柄的情况下在所有html中选择单选按钮。而且这似乎不是一个干净的方法。是的,没错。。。可能不是很干净,但这是可能的。您是否针对这一特定场景?只有两台收音机?理想情况下,我希望它是开放式的。无论按钮的位置如何,都可以定位任何单选按钮。在我看来,唯一不同的元素是span标签,如
STAELET map
默认map
。。。如果你可以通过这些课程来瞄准收音机,那就足够了吗?我实际上没有注意到有一个课程已经连接到span上了。所以我想我可能会按照你的方式去做。我将让这个问题静一静,看看是否有办法在传单中做到这一点,但如果没有,我会让你的答案成为选定的答案。谢谢你看。没问题。。。我希望你能弄明白!