1

我正在使用传单,并且正在使用 Leaflet PM 插件绘制多边形

在我完成绘图时,我运行以下事件

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();
}

因此,当用户单击“保存”按钮时,我正在尝试使用 jQuery 读取复选框的值:

function foundObjects(){
    console.log( $('#cbx1').attr('checked'))
    console.log( $('#cbx2').attr('value'))
}

但是,这两个结果在控制台中都显示为“未定义”。有人有提示,为什么会这样?

4

2 回答 2

2

我有同样的问题,我能够使用纯 javascript 解决它

function check() {
    document.getElementById("myCheck").checked = true;
}

function uncheck() {
    document.getElementById("myCheck").checked = false;
}
于 2018-12-02T10:49:07.267 回答
0

据我所知,您需要使用.prop("checked")而不是.attr("checked")

于 2018-10-29T02:36:07.237 回答