如何在 Dojo 中获取单选组的选定值
How to get a radio group's selected value in Dojo
我需要使用 Dojo 做一个项目,我完全不知道如何处理一组收音机。考虑如下示例;使用以下命令很容易获得选定的值:
$('input[name=map]').on('change', function() {
console.info($(this).val());
});
如何在 Dojo 中执行此操作?
require([ "dojo/dom",
"dojo/on",
"dojo/domReady!"], function(dom, on) {
//------?
});
// jQuery way
$('input[name=map]').on('change', function() {
console.info($(this).val());
});
// Dojo Way ???
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.11.2/dojo/dojo.js"></script>
<input type="radio" name="map" value="dark"> Dark<br>
<input type="radio" name="map" value="streets"> Street<br>
<input type="radio" name="map" value="terrain"> Terrain
你需要为它使用 dojo/query
。应该这样做。
// Dojo Way:
require(["dojo/on", "dojo/query", "dojo/domReady!"],
function(on, query) {
query("[name='map']").map(function(radio){
on(radio, "change", function(evt){
console.log(this.value);
})
})
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.11.2/dojo/dojo.js"></script>
<input type="radio" name="map" value="dark"> Dark<br>
<input type="radio" name="map" value="streets"> Street<br>
<input type="radio" name="map" value="terrain"> Terrain
我需要使用 Dojo 做一个项目,我完全不知道如何处理一组收音机。考虑如下示例;使用以下命令很容易获得选定的值:
$('input[name=map]').on('change', function() {
console.info($(this).val());
});
如何在 Dojo 中执行此操作?
require([ "dojo/dom",
"dojo/on",
"dojo/domReady!"], function(dom, on) {
//------?
});
// jQuery way
$('input[name=map]').on('change', function() {
console.info($(this).val());
});
// Dojo Way ???
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.11.2/dojo/dojo.js"></script>
<input type="radio" name="map" value="dark"> Dark<br>
<input type="radio" name="map" value="streets"> Street<br>
<input type="radio" name="map" value="terrain"> Terrain
你需要为它使用 dojo/query
。应该这样做。
// Dojo Way:
require(["dojo/on", "dojo/query", "dojo/domReady!"],
function(on, query) {
query("[name='map']").map(function(radio){
on(radio, "change", function(evt){
console.log(this.value);
})
})
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.11.2/dojo/dojo.js"></script>
<input type="radio" name="map" value="dark"> Dark<br>
<input type="radio" name="map" value="streets"> Street<br>
<input type="radio" name="map" value="terrain"> Terrain