Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 如何在Openlayers弹出窗口中获取按钮?_Html_Jquery Ui_Openlayers - Fatal编程技术网

Html 如何在Openlayers弹出窗口中获取按钮?

Html 如何在Openlayers弹出窗口中获取按钮?,html,jquery-ui,openlayers,Html,Jquery Ui,Openlayers,我试图在Openlayers弹出窗口中放置一个按钮。虽然按钮显示为正确显示以下代码,但单击按钮时不会执行函数“handlerFunc”。我发布的代码段都在另一个函数中(因此handlerFunc实际上是一个嵌套函数)。我对按钮本身使用JQuery。对可能出现的问题有什么想法吗?谢谢 var feature = new OpenLayers.Feature(presences, ll); feature.popupClass = popupClass; f

我试图在Openlayers弹出窗口中放置一个按钮。虽然按钮显示为正确显示以下代码,但单击按钮时不会执行函数“handlerFunc”。我发布的代码段都在另一个函数中(因此handlerFunc实际上是一个嵌套函数)。我对按钮本身使用JQuery。对可能出现的问题有什么想法吗?谢谢

    var feature = new OpenLayers.Feature(presences, ll); 
        feature.popupClass = popupClass;
        feature.data.popupContentHTML = "<button id='popupButton'>Click me</button>";
        feature.data.overflow = (overflow) ? "auto" : "hidden";
        feature.data.icon = markerIcon;
    $('#popupButton').button();
    $('#popupButton').click(handlerFunc);


 function handlerFunc() {
    // do something
 } 
var-feature=新的OpenLayers.feature(存在,ll);
feature.popupClass=popupClass;
feature.data.popupContentHTML=“单击我”;
feature.data.overflow=(溢出)?“自动”:“隐藏”;
feature.data.icon=markerIcon;
$('popupubutton').button();
$(“#弹出按钮”)。单击(handlerFunc);
函数handlerFunc(){
//做点什么
} 

最可能的原因是绑定到
单击事件时按钮不存在
$(“#弹出按钮”)
返回
null
。不要使用
$(“#弹出按钮”)。单击(handlerFunc)
try
$('popupButton').live('click',handlerFunc)。这意味着我们不仅在构建DOM时绑定到事件,而且在对象出现时绑定到事件。

所以这不起作用<代码>$('#popupButton')。单击(函数(){alert(“foo”);})另外,您是否设置了足够高的z-索引?谢谢。当我将处理函数设置为全局时,我发现我的问题得到了解决;由于某些原因,本地函数不在正确的范围内。