gpt4 book ai didi

javascript - 如何找出为什么 ng-click() 没有第二次触发

转载 作者:行者123 更新时间:2023-11-28 07:40:05 25 4
gpt4 key购买 nike

我有一些代码,可以在 jsfidle 上运行,但不能在本地运行。在这段代码中,我有编译模板并附加到 DOM 的指令。在这个模板中,我绑定(bind)了一些 ng-click 事件(关闭弹出窗口)。该事件触发一次,当第二次打开弹出窗口并尝试关闭它时,它不起作用。代码如下:

mymodal.directive('editable', function ($compile) {
return {
restrict: 'EAC',
template: "<a href='#' id='pop-over-link'>Show pop-over</a>",
scope: {test: '&'},
link: function(scope, element, attrs) {
scope.closePopover = function($event){
var el = $event.target;
$($event.target).parents('div.popover').popover('hide');
};
var templateData =
"<button class='btn btn-default btn-sm cancel' ng-click='closePopover($event)'>Cancel</button>";

var compliedData = $compile(templateData)(scope);

$(element)
.popover({html: true,
content: compliedData
})
.on('click', function(e) {
e.preventDefault();
return true;
});
}
}

这里是 jsFiddle:http://jsfiddle.net/vc4sd1fe/我该如何调试这种情况?问题可能出在哪里?我很困惑为什么这段代码只能完美运行一次。我怎样才能找到修复它的地方?

最佳答案

我在本地做了同样的环境。但没有遇到任何问题。无论如何,请检查此 fiddle 以获取更多详细信息,或者我可以向您发送我创建的用于测试相同代码的 html 文件。它工作得很好。每次点击都会关闭弹出窗口。

http://jsfiddle.net/Satbir/cswcopgr/

刚刚删除了一些代码行:

 scope:false,

和指令:

<editable></editable>

请检查并报告我。很高兴能为您提供帮助。

关于javascript - 如何找出为什么 ng-click() 没有第二次触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28153768/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com