从 Leaflet 弹出窗口中的复选框访问功能
Accessing features from checkboxes that are inside Leaflet popup
我在传单上工作,我正在用 Leaflet PM plugin
绘制一个多边形
在我画完我运行下面的活动
mymap.on('pm:create', function(e) {
var strPopup = '<input type="checkbox" id="cbx1" class="cbx" name="objects" value="eraser">';
strPopup += '<input type="checkbox" id="cbx2" class="cbx" name="objects" value="pencil">';
strPopup += '<button id="btnSave" class="btn" onclick="foundObjects()" >Save</button>';
e.layer.bindPopup(strPopup);
e.layer.openPopup();
}
因此,当用户单击 'Save' 按钮时,我尝试使用 jQuery:
读取复选框的值
function foundObjects(){
console.log( $('#cbx1').attr('checked'))
console.log( $('#cbx2').attr('value'))
}
然而,这两个结果在控制台中显示为 'undefined'。有人提示,为什么会这样?
据我所知,您需要使用 .prop("checked")
而不是 .attr("checked")
我遇到了同样的问题,我能够使用纯 javascript
解决它
function check() {
document.getElementById("myCheck").checked = true;
}
function uncheck() {
document.getElementById("myCheck").checked = false;
}
我在传单上工作,我正在用 Leaflet PM plugin
绘制一个多边形在我画完我运行下面的活动
mymap.on('pm:create', function(e) {
var strPopup = '<input type="checkbox" id="cbx1" class="cbx" name="objects" value="eraser">';
strPopup += '<input type="checkbox" id="cbx2" class="cbx" name="objects" value="pencil">';
strPopup += '<button id="btnSave" class="btn" onclick="foundObjects()" >Save</button>';
e.layer.bindPopup(strPopup);
e.layer.openPopup();
}
因此,当用户单击 'Save' 按钮时,我尝试使用 jQuery:
读取复选框的值function foundObjects(){
console.log( $('#cbx1').attr('checked'))
console.log( $('#cbx2').attr('value'))
}
然而,这两个结果在控制台中显示为 'undefined'。有人提示,为什么会这样?
据我所知,您需要使用 .prop("checked")
而不是 .attr("checked")
我遇到了同样的问题,我能够使用纯 javascript
解决它function check() {
document.getElementById("myCheck").checked = true;
}
function uncheck() {
document.getElementById("myCheck").checked = false;
}